P2600【ZJOI2010 Day2】排列计数 | |
|
问题描述
我们称一个$1,2,\dots,n$的排列$P_{1},P_{2},\dots,P_{n}$是Magic的,当且仅当:$2\leq i\leq n, P_{i} < P_{i/2}$。
你的任务非常简单:计算$1,2,\dots,n$的排列中,有多少是Magic的。由于答案可能很大,你只需要输出模$p$以后的值即可。
输入格式
第一行包含两个整数$n$和$p$,含义如上所述。
输出格式
包含一个整数,表示计算的排列中,Magic排列的个数模$p$的值。
样例输入
20 23
样例输出
16
提示
100%的数据中,$1\leq n\leq 10^{6}, p\leq 10^{9}$,且$p$是一个质数,\(n<p\)。