Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- t=int(input())
- for i in range(t):
- n=int(input())
- arr=[int(i) for i in input().split()] # input arr
- maxn=10**5 # maximum element in the array
- max_bits=maxn.bit_length()
- negator=2**max_bits-1 # used to reverse a number
- ans=[0 for i in range(2*maxn+100)]
- def fun(s):
- if ans[s]==0:
- ans[s]=1
- for i in range(max_bits):
- if (1<<i)&s:
- fun(s^(1<<i))
- for i in arr:
- fun(i^negator) # flips all the bits in a number until number of bits in 10**5
- print(*[ans[i] for i in arr])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement