Найдите все натуральные числа, \(N,\) принадлежащие отрезку \([100~000~000; \, 300~000~000],\) которые можно представить в виде \(N = 2^m \cdot 5^n,\) где \(m\) – чётное число, \(n\) – нечётное число. В ответе запишите все найденные числа в порядке возрастания, а справа от каждого числа – сумму \(m+n.\)
Решение:
Python
res = []
for m in range(0, 28, 2): # 2^28 > 300_000_000
for n in range(1, 18, 2): # 3^18 > 300_000_000
candidate = 2**m * 5**n
if 100_000_000 <= candidate <= 300_000_000:
res.append((candidate, m + n))
res.sort()
for n, s in res:
print(n, s)
Ответ:
\(125000000 \,\, 15\)
\(131072000 \,\, 23\)
\(195312500 \,\, 13\)
\(204800000 \,\, 21\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене