(О. Лысенков) На вход алгоритма подаётся неотрицательное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом.
Полученная таким образом запись является \(20\)-ричной записью искомого числа \(R.\) Например, для исходного числа \(1\) результат работы алгоритма – \(21,\) а для \(20\) результат работы алгоритма – \(1.\) Укажите минимальное число \(N\) такое, что результат работы алгоритма превышает \(190.\)
Решение:
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):
ns = conv(N)
if len(ns) % 2 == 0:
return int(ns[len(ns) // 2 :] + ns[:len(ns) // 2], 20)
return int(ns + ns[-1], 20)
#print(R(1), R(20))
for N in range(1, 1000):
if R(N) > 190:
print(N)
break
Ответ: \(10\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене