1957B - A BIT of a Construction - CodeForces Solution


bitmasks bitmasks bitmasks bitmasks bitmasks constructive algorithms greedy implementation

Please click on ads to support us..

Python Code:

t = int(input())

for _ in range(t):

    n, k = map(int, input().split())
    ans = []
    current_pow = 0
    summ = 0
    while True:
        if (summ + 2**current_pow) < k:
            summ += 2**current_pow
            ans.append(2**current_pow)
            current_pow += 1
        else:
            break
    if (k-summ) > 0:
        ans.append(k-summ)
    if len(ans) > n:
                while len(ans) > n:
            a = ans.pop(0)
            b = ans.pop(0)
            ans = [a+b] + ans
    if len(ans) < n:
                while len(ans) < n:
            ans.append(0)
    print(' '.join(map(str, ans)))
    


Comments

Submit
0 Comments
More Questions

1666F - Fancy Stack
1354A - Alarm Clock
1543B - Customising the Track
1337A - Ichihime and Triangle
1366A - Shovels and Swords
919A - Supermarket
630C - Lucky Numbers
1208B - Uniqueness
1384A - Common Prefixes
371A - K-Periodic Array
1542A - Odd Set
1567B - MEXor Mixup
669A - Little Artem and Presents
691B - s-palindrome
851A - Arpa and a research in Mexican wave
811A - Vladik and Courtesy
1006B - Polycarp's Practice
1422A - Fence
21D - Traveling Graph
1559B - Mocha and Red and Blue
1579C - Ticks
268B - Buttons
898A - Rounding
1372B - Omkar and Last Class of Math
1025D - Recovering BST
439A - Devu the Singer and Churu the Joker
1323A - Even Subset Sum Problem
1095A - Repeating Cipher
630F - Selection of Personnel
630K - Indivisibility