№ 8426 (Уровень: Средний)
№ 8426 (Уровень: Средний)
Функции F(n) и G(n), где n – натуральное число, заданы следующими
соотношениями:
F(n)= n, если n > 1000000;
F(n)= n+F(2n), если n ≤ 1000000;**
G(n)= F(n)/n.
Сколько существует таких натуральных чисел n (включая число 1000), для которых G(n) = G(2000)?
def F(n):
- объявляем функцию с именем F
и параметром n
.if n > 1000000:
- проверяем, если значение n
больше 1000000.return n
- возвращаем значение n
.if n <= 1000000:
- проверяем, если значение n
меньше или равно 1000000.return n + F(2 * n)
- возвращаем сумму значения n
и рекурсивного вызова функции F
с аргументом 2 * n
.def G(n):
- объявляем функцию с именем G
и параметром n
.return F(n) / n
- возвращаем результат деления значения функции F
с аргументом n
на n
.