#P5259. [JSOI2013] 游戏中的学问

[JSOI2013] 游戏中的学问

题目描述

大家应该都见过很多人手拉手围着篝火跳舞的场景吧?一般情况下,大家手拉手跳舞总是会围成一个大圈,每个人的左手拉着旁边朋友的右手,右手拉着另 一侧朋友的左手。

不过,如果每一个人都随机的拉住两个不同人的手,然后再慢慢散开,事情 就变得有趣多了——此时大家依旧会形成圈,不过却可能会形成多个独立的圈。 当然这里我们依然要求一个人的右手只能拉另一个人的左手,反之亦然。

班里一共有 NN 个同学,由 11NN 编号。Will想知道,究竟有多少种本质不 同的拉手方案,使得最终大家散开后恰好形成 kk 个圈呢?

给定两种方案,若存在一个人和他的一只手,满足在这两种方案中,拉着这 只手的人的编号不同,则这两种方案本质不同。

输入格式

输入一行包含三个正整数N, k, PN,~k,~P

输出格式

输出文件的包含一行一个整数,表示本质不同的方案数对p的余数。保证p 一定是一个质数。

3 1 1000000009 
2

提示

3  3k  N  30003~\leq~3k~\leq~N~\leq~3000

104  p  2 × 10910^4~\leq~p~\leq~2~\times~10^9