Лицарі
Дуже складна
Обмеження на час виконання 2 секунди
Обмеження на використання пам'яті 256 мегабайтів
Є n пар лицарів, які ворогують між собою. Також є круглий стіл з m місцями, де m ≥ 2n, і місця пронумеровані від 1 до m по колу.
Вам потрібно визначити кількість способів, якими можна розсадити 2n лицарів за столом так, щоб жодна пара ворогуючих лицарів не сиділа на сусідніх місцях.
Вхідні дані
Вхідні дані містять два цілі числа n і m (1 ≤ n ≤ 10^5, 2n ≤ m ≤ 3·10^5).
Вихідні дані
Виведіть остачу від ділення кількості можливих способів на 1000000007 (10^9+7).
Приклади
Вхідні дані #1
Відповідь #1
Відправки 33