Автомат получает на вход пятизначное число. По этому числу строится новое число по таким правилам:
1. Складываются квадраты цифр, стоящих на нечетных позициях;
2. Складываются квадраты цифр, стоящих на четных позициях;
3. Затем в порядке возрастания записываются эти суммы.
Нумерация цифр начинается с единицы.
Укажите наименьшее число, при вводе которого автомат выдает число 26149.
for i in range(10_000, 99_999 + 1):
nums = list(map(int, str(i)))
nch = nums[0] ** 2 + nums[2] ** 2 + nums[4] ** 2
ch = nums[1] ** 2 + nums[3] ** 2
if ch < nch:
res = str(ch) + str(nch)
else:
res = str(nch) + str(ch)
if res == ’26149’:
print(i)
break
Сумма квадратов 3 чисел принадлежит промежутку [0,243], а сумма квадратов 2 чисел промежутку [0,162]. В соответствие с этими правилами число разбивается на число 26 и 149. Раскладывая данные числа на суммы квадратов, получаем набор цифр для исходного числа {1,2,5,8,9}, при этом цифры {1,5} находятся на четных позициях, и цифры {2,8,9} на нечетных. Тогда минимальное число есть 21859.