Задание:
У исполнителя Калькулятор две команды:
1. Прибавь 2
2. Умножь на 3
Первая из них увеличивает число на экране на 3, вторая - утраивает его. Программа для Калькулятора - это последовательность команд. Сколько есть программ, которые число 2 преобразуют в число 42?
Решение:
* Составим формулу: F(n) = F(n-2) + F(n/3)
* Числа написанные ниже - это n, подставляем их в формулу:
* 2 = 1 - так как изначально уже одна программа есть.
4 = F(2) + 0 = 1 + 0 = 1
6 = F(4) + F(2) = 1 + 1 = 2
8 = F(6) + 0 = 2 + 0 = 2
10 = F(8) + 0 = 2 + 0 = 2
12 = F(10) + F(4) = 2 + 1 = 3
14 = F(12) + 0 = 3 + 0 = 3
16 = F(14) + 0 = 3 + 0 = 3
18 = F(16) + F(6) = 3 + 2 = 5
20 = F(18) + 0 = 5 + 0 = 5
22 = F(20) + 0 = 5 + 0 = 5
24 = F(22) + F(8) = 5 + 2 = 7
26 = F(24) + 0 = 7 + 0 = 7
28 = F(26) + 0 = 7 + 0 = 7
30 = F(28) + F(10) = 7 + 2 = 9
32 = F(30) + 0 = 9 + 0 = 9
34 = F(32) + 0 = 9 + 0 = 9
36 = F(34) + F(12) = 9 + 3 = 12
38 = F(36) + 0 = 12 + 0 = 12
40 = F(38) + 0 = 12 + 0 = 12
42 = F(40) + F(14) = 12 + 3 = 15
Ответ: 15