Автомат обрабатывает натуральное число n по следующему алгоритму:
1) строится двоичная запись числа n.
2) удаляются две последние цифры
3) полученное число переводится в десятичную запись и выводится на экран.
сколько разных значений будет показано на экране автомата при последовательном вводе всех натуральных чисел от 20 до 600?
можете подробно объяснить?
my_list = [(lambda x:(x*296+2410)%4096)(i) for i in range(2000)]
# начальное значение для временного минимума
min1_value = min2_value = 10000
min1_number = min2_number = 0
while my_list:
x = my_list.pop()
if x < min1_value:
min2_value = min1_value
min2_number = min1_number
min1_value = x
min1_number = 1
elif x == min1_value:
min1_number += 1
elif x < min2_value:
min2_value = x
min2_number = 1
elif x == min2_value:
min2_number += 1
print(min2_number)