В числе 21x457y937
Приведём решение на языке Python.
c = []
for x in range(1,37):
for y in range(0,37):
t = 2*37**7+1*37**6+x*37**5+4*37**4+5*37**3+7*37**2+y*37**1+9
if t % 36 == 0:
c.append(x*37**1+y)
print(max(c))
Ответ: 1340.
Приведём решение Юрия Красильникова.
В решении используется функция num(digits,base). Digits — список целых чисел, содержащий числовые значений цифр числа в системе счисления по основанию base. Функция возвращает значение числа, записанного этими цифрами.
def num(digits,base):
n=0
for d in digits:
n=n*base+d
return n
a=[num([y,x],37) for x in range(1,37) for y in range(37) if num([2,1,x,5,4,7,y,9],37)%36==0]
print(max(a))
Приведём решение Ильи Андрианова на языке Python.
def my_int(n: list, b: int):
return sum(x * b**i for i, x in enumerate(n[::-1]))
R = []
for x in range(0, 37):
for y in range(0, 37):
A = my_int([2, 1, x, 4, 5, 7, y, 9], 37)
if A % 36 == 0:
R.append(my_int([x, y], 37))
print(max(R))

