26.04.2025

Поляков р5 №174 (set)

'''   174) (А.М. Кабанов, Тольятти)  Автомат обрабатывает натуральное число N по следующему алгоритму:
1) Строится двоичная запись числа N.
2) Из записи удаляются все нули.
3) Полученное число переводится в десятичную запись и выводится на экран.
Сколько разных значений будет показано на экране автомата при последовательном вводе всех натуральных
чисел от 10 до 2500?'''

k=0
mas=set() # массив с уникальными значениями
for n in range(10,2500+1):
    N=bin(n)[2::]
    #print(N)
    N=N.replace("0","")
    #print(N)
    r=int(N,2)
    #print(r)
    mas.add(r) # добавление значений в set
print(len(mas))

Добавить комментарий