На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
а) если число N делится на 5, то к этой записи дописывается справа две единицы;
б) если число N на 5 не делится, то результат целочисленного деления N на 5 переводится в двоичную систему счисления и дописывается в конец числа.
Полученная таким образом запись является двоичной записью искомого числа R.
3. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 20 = 101002 результатом является число 10100112 = 83, а для исходного числа 14 = 11102 результатом является число 1110102 = 58.
Укажите минимальное нечётное число N, для которого с помощью описанного алгоритма получается число, не меньшее 783. В ответе запишите это число в десятичной системе счисления
Приведём решение на языке Python.
for N in range(1, 1000,2):
S = bin(N)[2:]
if N%5 == 0:
R = S + '11'
else:
R = S + bin(N//5)[2:]
if int(R,2) >= 783:
print(N)
break
Ответ: 49.

