(Даня Байт) Значение арифметического выражения 550 − y, где y — целое положительное число, не превышающее 1000, записали в пятеричной системе счисления.
Определите наименьшее значение y, при котором в пятеричной записи числа, являющегося значением данного арифметического выражения, содержится ровно 47 цифры 4.
🔹 Шаг 1. Подсчёт цифр 4 в 5-ричной записи
y = 1
n = 5**50 - y
c = 0
while n:
n, ost = divmod(n, 5)
if ost == 4:
c += 1
print(c)
📌 Результат: для примера берём y равным 1, считаем число n и переводим его в 5-ричную запись: каждый раз, когда остаток равен 4, увеличиваем счётчик.
🔹 Шаг 2. Наименьшее y с ровно 47 цифрами 4
for y in range(1, 1001):
n = 5**50 - y
c = 0
while n:
n, ost = divmod(n, 5)
if ost == 4:
c += 1
if c == 47:
print(y)
break
📌 Результат: перебираем y от 1 до 1000; как только в записи ровно 47 цифр 4, печатаем y и останавливаемся; ответ: 32.
🔹 Шаг 1. Подсчёт цифр 4 в 5-ричной записи
y = 1
n = 5**50 - y
c = 0
while n:
n, ost = divmod(n, 5)
if ost == 4:
c += 1
print(c)
📌 Результат: для примера берём y равным 1, считаем число n и переводим его в 5-ричную запись: каждый раз, когда остаток равен 4, увеличиваем счётчик.
🔹 Шаг 2. Наименьшее y с ровно 47 цифрами 4
for y in range(1, 1001):
n = 5**50 - y
c = 0
while n:
n, ost = divmod(n, 5)
if ost == 4:
c += 1
if c == 47:
print(y)
break
📌 Результат: перебираем y от 1 до 1000; как только в записи ровно 47 цифр 4, печатаем y и останавливаемся; ответ: 32.
🔹 Шаг 1. Подсчёт цифр 4 в 5-ричной записи
y = 1
n = 5**50 - y
c = 0
while n:
n, ost = divmod(n, 5)
if ost == 4:
c += 1
print(c)
📌 Результат: для примера берём y равным 1, считаем число n и переводим его в 5-ричную запись: каждый раз, когда остаток равен 4, увеличиваем счётчик.
🔹 Шаг 2. Наименьшее y с ровно 47 цифрами 4
for y in range(1, 1001):
n = 5**50 - y
c = 0
while n:
n, ost = divmod(n, 5)
if ost == 4:
c += 1
if c == 47:
print(y)
break
📌 Результат: перебираем y от 1 до 1000; как только в записи ровно 47 цифр 4, печатаем y и останавливаемся; ответ: 32.