[SGU282][JSOI2006]同构

成绩 开启时间 2014年09月19日 星期五 10:08
折扣 0.8 折扣时间 2014年09月26日 星期五 10:08
允许迟交 关闭时间 2014年09月26日 星期五 10:08
输入文件 isomorphism.in 输出文件 isomorphism.out

【题目描述】

我们把使得每对顶点都被恰好一条边连接,且被M种不同颜色之一染色的无向图叫做染色图。如果可以把某张染色图的顶点重新编号使得它和另一张染色图完全相同(即每条对应边的颜色都相同),我们就说这两张染色图是同构的。

给你N,M和素数P。你需要找到有N个顶点的两两互不同构的染色图数量。输出这个数模P的值。

【输入格式】

输入一行三个整数N,M,P(1<=N<=53,1<=M<=1000,P是素数且P<=10^6)。

【输出格式】

输出一行一个正整数,即互不同构的染色图数量模P的值。

【样例输入】

sample 1:

1 1 2


sample 2:

3 2 97


sample 3:

3 4 97

【样例输出】

sample 1:

1


sample 2:

4


sample 3:

20

【来源】

SGU282 Isomorphism

Novosibirsk SU Contest #2, by Novosibirsk Team #1