[NOI Online #1 入门组] 跑步

题目描述

小 H 是一个热爱运动的孩子,某天他想给自己制定一个跑步计划。小 H 计划跑 $n$ 米,其中第 $i(i \geq 1)$ 分钟要跑 $x_i$ 米($x_i$ 是正整数),但没有确定好总时长。 由于随着跑步时间增加,小 H 会越来越累,所以小 H 的计划必须满足对于任意 $i(i >1)$ 都满足 $x_i \leq x_{i-1}$。 现在小 H 想知道一共有多少个不同的满足条件的计划,请你帮助他。两个计划不同当且仅当跑步的总时长不同,或者存在一个 $i$,使得两个计划中 $x_i$ 不相同。 由于最后的答案可能很大,你只需要求出答案对 $p$ 取模的结果。

输入输出格式

输入格式


输入只有一行两个整数,代表总米数 $n$ 和模数 $p$。

输出格式


输出一行一个整数,代表答案对 $p$ 取模的结果。

输入输出样例

输入样例 #1

4 44

输出样例 #1

5

输入样例 #2

66 666666

输出样例 #2

323522

输入样例 #3

66666 66666666

输出样例 #3

45183149

说明

#### 样例输入输出 1 解释 五个不同的计划分别是:$\{1,1,1,1\}$,$\{2,1,1\}$,$\{3,1\}$,$\{2,2\}$,$\{4\}$。 --- #### 数据规模与约定 本题共 $10$ 个测试点,各测试点信息如下表。 | 测试点编号 | $n \leq$ | 测试点编号 | $n \leq$ | | :----------: | :---------: | :----------: | :---------: | | $1$ | $5$ | $6$ | $2\times 10^3$ | | $2$ | $10$ | $7$ | $5\times 10^3$ | | $3$ | $50$ | $8$ | $2\times 10^4$ | | $4$ | $100$ | $9$ | $5\times 10^4$ | | $5$ | $500$ | $10$ | $10^5$| 对于全部的测试点,保证 $1 \leq n \leq 10^5$,$1 \leq p < 2^{30}$。