T462720 欧拉回路

题目描述

求有多少本质不同的不超过 n 个点的、边数非空、无重边、可以有自环、存在至少一条欧拉回路的带标号连通无向图。 欧拉回路即:从一个点出发,经过每条边恰好一次并返回这个点,长度至少为1 的路径。 两个带标号无向图被认为是相同的当且仅当一张图可以对点重新标号得到另一张图。 答案对读入的一个大质数 p 取模。

输入格式

两个正整数 n, p。

输出格式

一个数表示答案。

说明/提示

$10^8 \le p \le 10^9$,保证 $p$ 是质数。 一共 $10$ 个测试点,对于第 $i$ 个点,$n \le \max(5 \times (i − 1), 5)$。 ## 解释 - 点数为$1$时,由于要求边数非空,所以只能是一个自环,方案数为1 - 点数为$2$时,图不可能满足连通、没有重边、有欧拉回路,方案数为0 - 点数为$3$时,三个点之间必然有一个三元环。同时,可以有$0/1/2/3$个自环,所以方案数为$4$