880027 - 题目的分数值
Time Limit : 1 秒
Memory Limit : 128 MB
蓝桥杯 C++青少组的比赛有 n 个问题,现在请你给这 n 个问题分配分值。 n 个问题已经按从简单到困难排好序,第 i 个问题的分值是 Ai。n 个问题的分值满足如下关系: 1≤A1≤A2≤…≤An≤n。不同的问题可以具有相同的分值。 主办方希望:解决更多问题的参赛者的排名更高。 因此,对于任何解决了 k(1≤k≤n-1)个问题的参赛者,其分数总和一定要小于解决了任何 k + 1 个问题的参赛者的分数总和。 你有几种分配分值的方法? 将答案对素数 m 取余后输出。
Input
整数 n 和 m 其中 2≤n≤5000,9×10^8<m<10^9,m 为素数。
Output
分值分配的方案数对 m 取余后的数字
Examples
Input
2 998244353
Output
3
Input
3 998244353
Output
7