Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def count_set_bits(n):
- count = 0
- while n:
- n &= n - 1
- count += 1
- return count
- def Zseq(P,Q,N):
- values = [0 for in range(N+1)]
- values[0] = 2
- bit_count = {}
- bit_count[0] = count_set_bits(0)
- for i in range(1,N+1):
- # print(values[i-1])
- if values[i-1] in bit_count:
- count = bit_count[values[i-1]]
- else:
- count = count_set_bits(values[i-1])
- bit_count[values[i-1]] = count
- values[i] = P * count + Q
- return count_setbits(values[N])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement