length треков. В фонотеке songs различных треков, и программа должна удовлетворять двум правилам:
- каждый трек фонотеки прозвучит хотя бы раз;
- трек можно поставить повторно, только если после его последнего звучания прошло не меньше gap других треков.
Сколько различных программ можно составить? Программы различны, если на какой-то позиции стоят разные треки.
Ответ может быть большим, верните его по модулю 10⁹ + 7.songs=2, length=4, gap=1 → 2
Трек можно повторить только после одного другого, поэтому треки чередуются: [1, 2, 1, 2] и [2, 1, 2, 1].
songs=3, length=4, gap=2 → 6
Первые три позиции — любая перестановка трёх треков (6 вариантов), а четвёртым может быть только первый трек: с момента его звучания прошло ровно два других.
songs=3, length=3, gap=0 → 6
songs=2, length=4, gap=1
2
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 91 тест на сервере, включая скрытые.