#CF1764D. Doremy 的钉子游戏
Doremy 的钉子游戏
Doremy 的钉子游戏
- 时间限制:2 秒
- 内存限制:512 MiB
题目描述
有 个红色钉子按逆时针顺序编号为 到 ,放在正 边形的顶点上;正多边形中心还有一个直径略小的蓝色钉子。最初,一根橡皮筋套住所有红色钉子。
Doremy 初始有一个空数组 。只要橡皮筋尚未碰到蓝色钉子,她就重复以下操作:
- 选择一个尚未移除的红色钉子 ;
- 移除钉子 ;
- 将 加到数组 的末尾。
求这个过程可能产生多少种不同的数组 。答案对给定质数 取模。

输入格式
一行两个整数 。 保证为质数。
输出格式
输出一个整数,表示不同数组的数量对 取模的结果。
样例输入 1
4 100000007
样例输出 1
16
样例输入 2
1145 141919831
样例输出 2
105242108
提示
在第一个样例中, 和 都可能产生,但 和 不可能产生。
数据范围
对所有数据,,,且 为质数。
| 子任务编号 | 分值 | 特殊限制 |
|---|---|---|
| 1 | 24 | |
| 2 | 36 | |
| 3 | 40 | 无特殊限制 |