liczbyBitow = []
suma = 0
sumyBitow = []
for i in range(1, 130000):
binarnie = '{0:b}'.format(i)
# print(binarnie)
liczbaBitow = binarnie.count('1')
# print(liczbaBitow)
liczbyBitow.append(liczbaBitow)
suma += liczbaBitow
sumyBitow.append(suma)
# print(liczbyBitow)
# print(sumyBitow
n = int(input())
for i in range(0, len(sumyBitow)):
if sumyBitow[i] >= n:
# print(i)
# print(sumyBitow)
# print(sumyBitow[i])
if sumyBitow[i] == n:
print(i+1)
for j in range(i+1, 0, -1):
print(j, end=" ")
else:
doWyrzucenia = 0
for j in range(i, -1, -1):
# print(liczbyBitow[j])
if liczbyBitow[j] == sumyBitow[i]-n:
# print(str(j+1) + " Do wyrzucenia")
doWyrzucenia = j+1
break
print(i)
for j in range(i+1, 0, -1):
if j == doWyrzucenia:
pass
else:
print(j, end=" ")
break
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | liczbyBitow = [] suma = 0 sumyBitow = [] for i in range(1, 130000): binarnie = '{0:b}'.format(i) # print(binarnie) liczbaBitow = binarnie.count('1') # print(liczbaBitow) liczbyBitow.append(liczbaBitow) suma += liczbaBitow sumyBitow.append(suma) # print(liczbyBitow) # print(sumyBitow n = int(input()) for i in range(0, len(sumyBitow)): if sumyBitow[i] >= n: # print(i) # print(sumyBitow) # print(sumyBitow[i]) if sumyBitow[i] == n: print(i+1) for j in range(i+1, 0, -1): print(j, end=" ") else: doWyrzucenia = 0 for j in range(i, -1, -1): # print(liczbyBitow[j]) if liczbyBitow[j] == sumyBitow[i]-n: # print(str(j+1) + " Do wyrzucenia") doWyrzucenia = j+1 break print(i) for j in range(i+1, 0, -1): if j == doWyrzucenia: pass else: print(j, end=" ") break |
English