1991B - AND Reconstruction - CodeForces Solution


bitmasks constructive algorithms greedy

Please click on ads to support us..

Python Code:

for _ in range(int(input())):
    n = int(input())
    l = list(map(int,input().split()))
    answer = [l[0]]
    for i in range(1,len(l)):
        answer.append(l[i]|l[i-1])
    answer.append(l[-1])
    new = []
    for i in range(1,len(answer)):
        new.append(answer[i]&answer[i-1])
    if new == l:
        print(*answer)
    else:
        print(-1)


Comments

Submit
0 Comments
More Questions

1225A - Forgetting Things
1717A - Madoka and Strange Thoughts
1717B - Madoka and Underground Competitions
61B - Hard Work
959B - Mahmoud and Ehab and the message
802G - Fake News (easy)
1717C - Madoka and Formal Statement
420A - Start Up
1031A - Golden Plate
1559C - Mocha and Hiking
427B - Prison Transfer
330A - Cakeminator
426A - Sereja and Mugs
363A - Soroban
1585C - Minimize Distance
1506E - Restoring the Permutation
1539A - Contest Start
363D - Renting Bikes
1198D - Rectangle Painting 1
1023B - Pair of Toys
1725A - Accumulation of Dominoes
1675E - Replace With the Previous Minimize
839A - Arya and Bran
16B - Burglar and Matches
1625B - Elementary Particles
1725G - Garage
1725B - Basketball Together
735A - Ostap and Grasshopper
1183B - Equalize Prices
1481A - Space Navigation