问题 4745 --跑步(本站数据)

4745: 跑步(本站数据)

题目描述

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

输入

从文件 running.in 中读入数据。
仅一行两个整数 $n,p$ 表示跑步距离与模数。

输出

输出到文件 running.out 中。
仅一行一个整数,表示答案模 $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}。

【数据范围与提示】
对于所有测试点:$1 \le n \le 10^5,1 \le p < 2^{30}$。
每个测试点限制具体如下:

测试点编号 $n \le$
$1$ $5$
$2$ $10$
$3$ $50$
$4$ $100$
$5$ $500$
$6$ $2000$
$7$ $5000$
$8$ $20000$
$9$ $50000$
$10$ $100000$

序号 标题 作者 发表时间 费用 订购数 操作