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

Ис­пол­ни­тель пре­об­ра­зу­ет число, за­пи­сан­ное на экра­не.

У ис­пол­ни­те­ля есть ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра.

1.  Вы­честь 2.

2.  Вы­честь 3.

3.  Раз­де­лить на­це­ло на 3.

Пер­вая ко­ман­да умень­ша­ет число на экра­не на 2, вто­рая  — на 3, тре­тья умень­ша­ет число в 3 раза. Сколь­ко су­ще­ству­ет про­грамм, для ко­то­рых при ис­ход­ном числе 20 ре­зуль­та­том яв­ля­ет­ся число 3?

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

Ре­ше­ние.

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

def f(x, y):

if x < y :

return 0

if x == y:

return 1

else:

return f(x - 2, y) + f(x - 3, y) + f(x // 3, y)

print(f(20, 3))

 

Ответ: 76.

Источник: ЕГЭ по ин­фор­ма­ти­ке 20.06.2023. Ос­нов­ная волна. Даль­ний Во­сток