Автор | Сообщение |
|
Отправлено: 22.06.21 10:24. Заголовок: 23 №153, не пойму как начать!
153) (Е. Джобс) Исполнитель Калькулятор преобразует число, записанное на экране. У исполнителя есть две команды, которым присвоены номера: 1. Вычти 8 2. Раздели нацело на 2 Первая команда уменьшает число на 8, вторая – вдвое. Программа для исполнителя – это последовательность команд. Сколько существует таких программ, которые исходное число 102 преобразуют в число 5 и при этом траектория вычислений программы содержит число 43? Траектория из 102 в 5 (не понимаю как формулу расписать если из большего в меньшую.) Кn=Kn+8 Кn=K(n+8)+K(n*2) ?
|
|
|
Ответов - 5
[только новые]
|
|
|
| Администратор
|
Сообщение: 2897
|
|
Отправлено: 22.06.21 16:02. Заголовок: elzara пишет: Кn=K(n..
elzara пишет: А что смущает? там одна формула.
|
|
|
|
Отправлено: 23.06.21 06:38. Заголовок: начала решать
Получается с 102 по 43 сначала, там 43 будет равно 1, и переходим на новую таблицу. А дальше значение будут равны 0? или пишем по единице?
|
|
|
|
| Администратор
|
Сообщение: 2902
|
|
Отправлено: 23.06.21 10:35. Заголовок: Дальше записываем 1 ..
Дальше записываем 1 в ячейку с n = 43 и нули во все ячейки с бОльшими n. Идет вниз до 5.
|
|
|
|
Отправлено: 23.06.21 13:10. Заголовок: поняла! Спасибо!
|
|
|
|
Отправлено: 08.12.21 11:29. Заголовок: def f(x,y): if x..
def f(x,y): if x<y: return 0 if x == y: return 1 if x > y: return f(x-8,y)+f(x//2,y) print(f(102,43)*f(43,5))
|
|
|
|