Algorithm

<br>Concatenation of Consecutive Binary Numbers

Solution
class Solution:
    def concatenatedBinary(self, n: int) -> int:
        MOD = 10**9 + 7
        ans = 0
        length = 0
        
        for i in range(1, n + 1):
            if (i & (i - 1)) == 0:
                length += 1
                
            ans = ((ans << length) | i) % MOD
            
        return ans
Video GuideLeetcode Daily

Time Complexity

Order N

Space Complexity

Order 1