Задания
Версия для печати и копирования в MS Word
Тип 16 № 84678
i

Функ­ция F(n), где n  — целое число, за­да­ет­ся сле­ду­ю­щи­ми со­от­но­ше­ни­я­ми:

 F левая круг­лая скоб­ка n пра­вая круг­лая скоб­ка = n, если  n мень­ше 5000;

 F левая круг­лая скоб­ка n пра­вая круг­лая скоб­ка = n плюс F левая круг­лая скоб­ка дробь: чис­ли­тель: n, зна­ме­на­тель: 5 конец дроби пра­вая круг­лая скоб­ка , если  n боль­ше или равно 5000 и крат­но 5;

 F левая круг­лая скоб­ка n пра­вая круг­лая скоб­ка = 117 плюс F левая круг­лая скоб­ка n минус 3 пра­вая круг­лая скоб­ка , если  n боль­ше или равно 5000 и не крат­но 5.

На­зо­ви­те ми­ни­маль­ное зна­че­ние n, для ко­то­ро­го функ­ция F(n) опре­де­ле­на и  F левая круг­лая скоб­ка n пра­вая круг­лая скоб­ка боль­ше 100 000.

Спрятать решение

Ре­ше­ние.

При­ведём ре­ше­ние на языке Python.

from sys import setrecursionlimit

setrecursionlimit(10**6)

def F(n):

if n < 5000:

return n

if n >= 5000 and n%5 == 0:

return n + F(n//5)

if n >= 5000 and n%5 != 0:

return 117 + F(n-3)

for n in range(1,10**10):

if F(n) > 100000:

print(n)

break

 

Ответ: 79922.