Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 16. Информатика. ЕГЭ. Поляков-6296
- Просмотры: 48
- Изменено: 10 августа 2026
Алгоритм вычисления функции \(F(a, \, b),\) где \(a\) и \(b\) – неотрицательные числа, задан следующими соотношениями:
- \(F(a, \, 0) = a;\)
- \(F(a, \, b) = F(a - b, \, b),\) если \(a \geqslant b > 0;\)
- \(F(a, \, b) = F(b, \, a),\) если \(a < b.\)
Определите количество таких чисел \(n,\) принадлежащих отрезку \(100~000~000 \leqslant n \leqslant 200~000~000,\) для которых \(F(n, \, 15) = 1.\)
Решение:
Функция \(F(a, \, b)\) представляет собой функцию вычисления НОД по алгоритму Евклида. Значит, вопрос задания можно переформулировать так: найти все числа на отрезке \(100~000~000 \leqslant n \leqslant 200~000~000,\) которые взаимно просты с \(15,\) т.е. не делятся ни на \(3,\) ни на \(5.\) Это легко можно сделать, используя формулу включения-исключения:
Python
d3 = (200_000_000 - 100_000_002) // 3 + 1
d5 = (200_000_000 - 100_000_000) // 5 + 1
d15 = (200_000_000 - 100_000_005) // 15 + 1
print(100_000_001 - d3 - d5 + d15)
Ответ: \(53333334\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


