![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Излагаю обещанное. Допустим известны искомые количества для n от 1 до i. От 1 до 4 легко рассчитывается на бумаге и пробиты просто в процедуре. Ищем для n(i+1). Вся куча полученных чисел будет состоять из двух групп - в первой группе последняя операция деление на три, во второй - вычитание единицы. Других вариантов нет. Для любого числа из первой группы предыдущие ходы любые, и поскольку ходов i, то количество таких чисел n(i). Для 2-ой группы предыдущие ходы любые (количество n(i)) за вычетом той ситуации, когда два последних хода вычитание единицы, а их n(i-3). Отсюда и формула n(i+1)=2*n(i)-n(i-3). Чет в #7 плюс нарисовал вместо минуса
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Логическая переменная, оператор присваивания (Pascal) | Electorat | Помощь студентам | 9 | 26.11.2013 15:52 |
Отображение значений переменных типа float и double(Языки Pascal и C) | Сырно | Помощь студентам | 3 | 17.10.2010 18:37 |
Pascal. рекурсия. | TOSAgrk | Помощь студентам | 2 | 04.02.2009 12:05 |