diff --git a/tasks/medium/bits/double_base_palindromes.toml b/tasks/medium/bits/double_base_palindromes.toml index 73eb7f9..23452c1 100644 --- a/tasks/medium/bits/double_base_palindromes.toml +++ b/tasks/medium/bits/double_base_palindromes.toml @@ -20,22 +20,21 @@ limits = """ """ solution = """ +def is_palindrome(s): + return s == s[::-1] + def solution(num: int) -> int: - def is_palindrome(s): - return s == s[::-1] - - count = 0 - n = 0 - while count < num: - n += 1 - if is_palindrome(str(n)) and is_palindrome(bin(n)[2:]): - count += 1 - return n + x = 0 + while num: + x += 1 + if is_palindrome(str(x)) and is_palindrome(bin(x)[2:]): + num -= 1 + return x """ examples = """ -solution(3) == 5 solution(1) == 1 +solution(3) == 5 solution(7) == 99 solution(15) == 39993 """ @@ -48,31 +47,21 @@ name = "integer" [output_signature.type] name = "integer" -[[asserts]] -arguments = [3] -comment = "Third palindrome" -expected = 5 - [[asserts]] arguments = [1] comment = "First palindrome" expected = 1 -[[asserts]] -arguments = [7] -comment = "Seventh palindrome" -expected = 99 - -[[asserts]] -arguments = [15] -comment = "Fifteenth palindrome" -expected = 39993 - [[asserts]] arguments = [2] comment = "Second palindrome" expected = 3 +[[asserts]] +arguments = [3] +comment = "Third palindrome" +expected = 5 + [[asserts]] arguments = [4] comment = "Fourth palindrome" @@ -88,6 +77,11 @@ arguments = [6] comment = "Sixth palindrome" expected = 33 +[[asserts]] +arguments = [7] +comment = "Seventh palindrome" +expected = 99 + [[asserts]] arguments = [8] comment = "Eighth palindrome" @@ -123,6 +117,11 @@ arguments = [14] comment = "Fourteenth palindrome" expected = 32223 +[[asserts]] +arguments = [15] +comment = "Fifteenth palindrome" +expected = 39993 + [[asserts]] arguments = [16] comment = "Sixteenth palindrome" @@ -144,56 +143,6 @@ comment = "Nineteenth palindrome" expected = 585585 [[asserts]] -arguments = [1] -comment = "Verify first" -expected = 1 - -[[asserts]] -arguments = [2] -comment = "Verify second" -expected = 3 - -[[asserts]] -arguments = [3] -comment = "Verify third" -expected = 5 - -[[asserts]] -arguments = [4] -comment = "Verify fourth" -expected = 7 - -[[asserts]] -arguments = [5] -comment = "Verify fifth" -expected = 9 - -[[asserts]] -arguments = [6] -comment = "Verify sixth" -expected = 33 - -[[asserts]] -arguments = [7] -comment = "Verify seventh" -expected = 99 - -[[asserts]] -arguments = [8] -comment = "Verify eighth" -expected = 313 - -[[asserts]] -arguments = [9] -comment = "Verify ninth" -expected = 585 - -[[asserts]] -arguments = [10] -comment = "Verify tenth" -expected = 717 - -[[asserts]] -arguments = [11] -comment = "Verify eleventh" -expected = 7447 +arguments = [20] +comment = "Twentieth palindrome" +expected = 1758571