Contest.uni-smr.ac.ru :: соревнования по программированию
Русская версия || English version
Login:
Password:
Забыли пароль?
 пример поиска: Вася Пупкин
 

Задача D. Командный пасьянс

Задачу добавил: alef

Успешно сдано решений: 1

Организаторы хотели бы разместить команды в каждой аудитории таким образом, чтобы никакие две команды из одного вуза не были соседними.

В аудитории N компьютеров, соседними являются те, у которых соседние номера. Компьютеры #1 и #N имеют по одному соседу.

Определите, сколько существует возможных вариантов рассадить команды за компьютером, если между командами из одного вуза должно располагаться не менее D команд из других вузов.

Все команды из одного вуза считаются неразличимыми.

 

Формат входного файла input.txt

Первая строка — целое число N (1 <= N <= 20; количество компьютеров, оно же количество команд в аудитории), через пробел целое число V (1 <=V <= 20; количество вузов, которые эти команды представляют), через пробел — целое число D (0 <= D <= 20; минимальное количество команд из других вузов, разделяющих команды одного вуза).

В следующей строке — V целых положительных чисел через пробел — количество команд от каждого вуза. Гарантируется, что сумма этих чисел равна N.

 

Формат выходного файла output.txt

Первая строка — целое число, количество вариантов рассадить команды.

 

Пример входного файла — 1

4 2 1

2 2

 

Пример выходного файла — 1

2

 

Пример входного файла — 2

6 3 2

3 2 1

 

Пример выходного файла — 2

0

 

Пример входного файла — 3

10 4 2

4 3 2 1

 

Пример выходного файла — 3

10

 

Пример входного файла — 4

20 20 0

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

 

Пример выходного файла — 4

2432902008176640000


Сдать задачу

Задать вопрос жюри по этой задаче