4528: 「HAOI2018」苹果树

内存限制:512 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:0 解决:0

题目描述

小 C 在自己家的花园里种了一棵苹果树,树上每个结点都有恰好两个分支。经过细心的观察,小 C 发现每一天这棵树都会生长出一个新的结点。 第一天的时候, 果树会长出一个根结点,以后每一天,果树会随机选择一个当前树中**没有长出过结点**的分支, 然后在这个分支上长出一个新结点,新结点与分支所属的结点之间连接上一条边。 小 C 定义一棵果树的不便度为树上两两结点之间的距离之和,两个结点之间的距离定义为从一个点走到另一个点的路径经过的边数。 现在他非常好奇,如果 $N$ 天之后小 G 来他家摘苹果,这个不便度的期望 $E$ 是多少。但是小 C 讨厌分数,所以他只想知道 $E \times N!$ 对 $P$ 取模的结果,可以证明这是一个整数。

输入

一行两个整数 $N, P$。

输出

输出一个整数表示答案。

样例输入 复制

3 610745795

样例输出 复制

24

提示

输入样例2


305 1000000007

输出样例2


865018107

数据范围:对于 $20\%$ 的数据,$N \le 10$; 对于 $50\%$ 的数据,$N \le 500$; 对于另外 $20\%$ 的数据,$P = 10^9 + 7$; 对于 $100\%$ 的数据,$N \le 2000, P \le 10^9 + 7$。

来源/分类