Задание 5. Информатика. ЕГЭ. Поляков-4043

Просмотры: 18
Изменено: 14 апреля 2025

Алгоритм получает на вход натуральное число \(N > 1\) и строит по нему новое число \(R\) следующим образом:

  1. Если исходное число кратно \(2,\) оно делится на \(2,\) иначе из него вычитается \(1.\)
  2. Если полученное на предыдущем шаге число кратно \(3,\) оно делится на \(3,\) иначе из него вычитается \(1.\)
  3. Если полученное на предыдущем шаге число кратно \(5,\) оно делится на \(5,\) иначе из него вычитается \(1.\)
  4. Число, полученное на шаге 3, считается результатом работы алгоритма.

Сколько существует различных натуральных чисел \(N,\) при обработке которых получится \(R = 3?\)

Решение:

Python


def R(N):
    N = N // 2 if N % 2 == 0 else N - 1
    N = N // 3 if N % 3 == 0 else N - 1
    N = N // 5 if N % 5 == 0 else N - 1
    return  N

print(sum(R(N) == 3 for N in range(2, 10000)))

Ответ: \(6\)