*(П. Финкель) На вход алгоритма подаётся шестизначное натуральное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом:
Полученная таким образом запись является записью искомого числа \(R\) в системе счисления с основанием \(19.\) Укажите максимальное число \(R\) с суммой цифр, кратной \(7,\) которое может быть получено в результате работы алгоритма. Запишите его в ответе в десятичной системе счисления.
Решение:
Python
def conv(x):
alph = '0123456789ABCDEFGHI'
ans = ''
while x:
ans = alph[x % 19] + ans
x //= 19
return ans
def R(x):
tmp = conv(x)
for _ in range(2):
for ch in 'BCDFGH':
tmp = tmp.replace(ch, '5')
tmp = conv(x % 19) + tmp
tmp = tmp[-2:] + tmp[:-2]
return tmp
max_R = 0
for N in range(100_000, 1_000_000):
t = R(N)
if sum(int(x, 19) for x in t) % 7 == 0:
max_R = max(max_R, int(t, 19))
print(max_R)
Ответ: \(893871724\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене