1894: Цикли перестановки

Переглянути як PDF

Надіслати розвʼязок

Бали: 24,00 (частково)
Ліміт часу: 4.0s
Ліміт памʼяті: 256M
Ввід: stdin
Вивід: stdout

Автор:
Тип задачі
Дозволені мови
Assembly, Awk, Brain****, C, C++, Java, mono C#, Pascal, Perl, Python, Sed, Text, vb

Дана перестановка чисел від ~1~ до ~N~.

Знайдіть кількіть можливих розбиттів цієї перестановки на цикли.

Два розбиття вважаються різними, якщо існує таке ~x~, що кількість циклів довжини ~x~ різна.

Виведіть відповіть по модулю ~MOD~.

Input

Вхідний потік містить цілі числа ~N~, ~MOD~.

Числа розділяються пропуском.

Output

У вихідний потік вивести відповідь по модулю ~MOD~.

Обмеження

~1 \le N \le 35 \times 10^3~

~1 \le MOD \le 10^9+7~

Sample Input 1

11 18468

Sample Output 1

56

Sample Input 2

4 26501

Sample Output 2

5

Sample Input 3

14 15725

Sample Output 3

135

Sample Input 4

3 29359

Sample Output 4

3

Коментарі

Будь ласка, прочитайте правила перед коментуванням.


Наразі коментарів немає.