ГлавнаяСборникиТурнирыРазделыФорумыУчастникиПечатьПомощьО системе

Турниры > Финальный турнир сезона «Зима — 2022» > задача:


G. Макс и шкафчик

Финальный турнир сезона «Зима — 2022»

Старт: 05.мар.2022 в 10:15:00
Финиш: 05.мар.2022 в 13:15:00
Турнир завершён!
• Турнирная таблица

Гость
• Вопросы к жюри (2)

Задачи турнира

• A. Макс и розыгрыш приза
• B. Макс и перемешанные фотографии
• C. Макс и офисная улица
• D. Макс и дуэль танков
• E. Макс и выдача багажа
• F. Макс и A0
• G. Макс и шкафчик
• H. Макс и тройные подарки

Обратная связь

Если у вас есть предложения или пожелания по работе Contester, посетите форум сайта www.contester.ru.

Лимит времени 2000/2000/2000/2000 мс. Лимит памяти 65536/65536/65536/65536 Кб.

Макс и шкафчик
Макс и шкафчик
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
64 мегабайта
ввод
стандартный ввод
вывод
стандартный вывод

Макс захотел приобрести себе шкафчик, в котором можно было бы хранить различные вещи. У шкафчика должно быть $$$N$$$ ящиков, расположенных вертикально друг над другом.

В мебельмом магазине Максу показали множество различных шкафчиков, а также особо отметили, что некоторые ящики в них могут закрываться на замок.

Однако Макс быстро сообразил, что даже если ящик закрывается на замок, это не всегда гарантирует, что до его содержимого нельзя будет добраться без ключа: если ящик непосредственно над рассматриваемым не запирается, то его можно просто вынуть из шкафчика, и тогда откроется доступ к запертому ящику.

Поэтому Макс считает ящик шкафчика надёжным, если выполняются два условия:

  • Во-первых, этот ящик должен закрываться на замок;
  • Во-вторых, либо этот ящик должен быть самым верхним, либо ящик сразу над ним тоже должен закрываться на замок.

Максу нужно, чтобы из $$$N$$$ ящиков шкафчика ровно $$$M$$$ были надёжными. Как оказалось, получить такой шкафчик можно различными способами. Например, ниже показано, как можно сделать шкафчик из $$$5$$$ ящиков, $$$3$$$ из которых надёжны (серым закрашены запирающиеся ящики, зелёным — запирающиеся и надёжные).

Помогите Максу определить, сколько существует способов собрать интересующий его шкафчик.

Входные данные

Ввод содержит целые числа $$$N$$$ и $$$M$$$ ($$$1 \le N \le 1000$$$, $$$0 \le M \le N$$$) — соответственно количество ящиков в шкафчике и количество ящиков, которые должны быть надёжными.

Выходные данные

Выведите одно целое число — количество видов шкафчиков из $$$N$$$ ящиков, у которых ровно $$$M$$$ ящиков надёжны. Так как ответ может оказаться очень большим, выведите остаток от его деления на $$$1000000007$$$.

Примеры

Входные данные
5 3
Выходные данные
5
Входные данные
10 4
Выходные данные
151

Для отправки решений необходимо выполнить вход.

www.contester.ru