![]() |
|
Модераторы: Poseidon |
![]()
|
|
| 14SatanA88 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 13.5.2010 Репутация: 1 Всего: 5 |
Доброго времени суток, уважаемые форумчане.
Помогите с алгоритмом решения задачи или, если есть, дайте код. Условие мячик прыгает по лестнице из N ступенек по не более M ступенек за раз; необходимо посчитать, сколькими способами он может спуститься без вывода самих вариантов прыжков ( O(n*m) ) Обязательно нужно соблюсти сложность алгоритма. Это сообщение отредактировал(а) 14SatanA88 - 25.7.2011, 22:34 |
|||
|
||||
| Silent |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 252 Регистрация: 3.10.2006 Репутация: 6 Всего: 9 |
обращаю внимание, что последовательность растет очень быстро, и 44х значений хватит лишь для M=2, N=44. Если ограничения задачи выше - используй длинную арифметику, благо тут только сложения. |
|||
|
||||
| 14SatanA88 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 13.5.2010 Репутация: 1 Всего: 5 |
Silent, за код спасибо.
а ты не мог бы мне алгоритм объяснить? |
|||
|
||||
| DeMoNN |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 179 Регистрация: 21.3.2008 Репутация: 1 Всего: 2 |
Это простая одномерная динамика. В массиве а храним число способов попасть на данную ступеньку. За первый ход мы можем попасть на каждую из М ступенек, так что заполняем первые М элементов массива единицами. А потом пробегаем циклом с первой ступеньки до последней и добавляем к каждой ступеньке, на которую мы можем попасть из текущей, число способов, которыми мы можем попасть в текущую ячейку (т.е. "переходим" на каждую ступеньку из текущей всеми возможными способами). Легко видеть, что этот алгоритм переберет все возможные способы спуститься на последнюю ступеньку.
|
|||
|
||||
| 14SatanA88 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 13.5.2010 Репутация: 1 Всего: 5 |
DeMoNN, Silent, спасибо.
|
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |