Concatenation of consecutive binary numbers
September 23, 2022
bit-manipulationProblem URL: Concatenation of consecutive binary numbers
We will take a brute force approach to solve the problem. But rather than using bin function to convert the number to binary, which is prefixed with 0b, we can use the format function to get rid of those prefixes. Then we can convert the string to binary again using the int function by passing 2 as the second parameter. Finally we mod the integer value with the given mod and return as result.
class Solution:
def concatenatedBinary(self, n: int) -> int:
MOD = 10**9 + 7
string = ""
for i in range(1, n+1):
string += format(i, "b")
return int(string,2) % MOD
Time Complexity: O(n)
Space Complexity: O(1)