# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
517322 | KoD | Popcount (COCI19_popcount) | C++17 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
n, m = map(int, input().split())
if n == 1:
print(1)
print('A=A')
exit()
k = 1
ans=[]
while k < n:
s = ''
while len(s) < n:
s += '1' * k
s += '0' * k
b = int((s[:n])[::-1], 2)
ans.append('A=((A&{})+((A>>{})&{}))'.format(b, k, b))
k *= 2
print(len(ans))
print(*ans,sep='\n')