(О. Лысенков) На вход алгоритма подаётся неотрицательное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом.
Полученная таким образом запись является \(20\)-ричной записью искомого числа \(R.\) Например, для исходного числа \(265 = D5_{20}\) результатом является число \(1E6_{20} = 686,\) а для исходного числа \(66 = 36_{20}\) результатом является число \(47_{20} = 87.\) Найдите наименьшее число \(N,\) такое что \(20\)-ричная запись результата работы алгоритма \(R\) содержит не менее трёх разрядов и хотя бы два из них записываются латинскими буквами.
Решение:
Python
def conv(n):
if not n:
return '0'
ans = ''
alph = '0123456789ABCDEFGHIJ'
while n:
ans = alph[n % 20] + ans
n //= 20
return ans
def R(N):
alph = '0123456789ABCDEFGHIJ'
d = [alph[(int(x, 20) + 1) % 20] for x in conv(N)]
ans = str(N % 2) + ''.join(d)
return conv(int(ans, 20))
#print(R(265), R(66))
for N in range(1000):
ns = R(N)
if len(ns) > 2 and sum(x in 'ABCDEFGHIJ' for x in ns) > 1:
print(N)
break
Ответ: \(189\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене