#P13077. [AGC056F] Degree Sequence in DFS Order
[AGC056F] Degree Sequence in DFS Order
题目描述
已知整数 , 求有多少个整数序列 可以由以下方式生成,答案对 取模。
- 选择一个 个点, 条边的无向连通图 ,要求无自环,但可以有重边。
- 进行 DFS,令 表示遍历到的第 个点的度数,具体的,执行以下代码:
a = empty array
dfs(v):
visited[v]=True
a.append(degree[v])
for u in g[v]:
if not visited[u]:
dfs(u)
dfs(arbitrary root)
这里, 是图 的邻接表, 是任意顺序的与 相连的顶点列表。
举个例子,对于 ,一个可能的 ,图 如下图所示:

顶点上的数字表示访问他们的顺序,橙色箭头表示遍历时经过的边。
输入格式
一行两个数 。
输出格式
一行一个数,表示答案。
样例解释
只有 合法。
输入输出样例 #1
输入 #1
2 2
输出 #1
1
输入输出样例 #2
输入 #2
3 4
输出 #2
9
输入输出样例 #3
输入 #3
10 20
输出 #3
186225754
输入输出样例 #4
输入 #4
100000 1000000
输出 #4
191021899
说明/提示
- 。