AT_abc253_h [ABC253Ex] We Love Forest
题目描述
有一个包含 N 个顶点、0 条边的图 G,顶点编号为 1 到 N。另外,给定长度为 M 的数列 u=(u1,u2,…,uM) 和 v=(v1,v2,…,vM)。
你需要进行 N−1 次如下操作:
- 每次操作中,等概率地随机选择一个 i(1≤i≤M),并在 G 中添加一条连接顶点 ui 和顶点 vi 的无向边。
注意,即使 G 中已经存在一条连接 ui 和 vi 的边,也要再添加一条新的边。也就是说,操作结束后,G 可能包含重边。
对于 K=1,2,…,N−1,请你求出经过 K 次操作后,G 仍然是森林的概率,并对 998244353 取模。
森林的定义:不包含环的无向图称为森林。森林可以是不连通的。
概率的 mod 998244353 的定义:本题中要求的概率一定是有理数。在本题的约束下,设概率为最简分数 xy,保证 x 不会被 998244353 整除。
此时,存在唯一的 0 到 998244352 之间的整数 z,满足 xz≡y(mod998244353)。请输出这个 z。
输入格式
输入按以下格式从标准输入读入。
N M
u1 v1
⋮
uM vM
输出格式
输出 N−1 行。第 i 行输出经过 i 次操作后,G 仍然是森林的概率,对 998244353 取模。
输入输出样例 #1
输入 #1
3 2
1 2
2 3
输出 #1
1
499122177
输入输出样例 #2
输入 #2
4 5
1 2
1 2
1 4
2 3
2 4
输出 #2
1
758665709
918384805
说明/提示
约束
- 2≤N≤14
- N−1≤M≤500
- 1≤ui,vi≤N
- ui=vi
- 所有输入均为整数
样例解释 1
用 (u,v) 表示一条连接顶点 u 和顶点 v 的边。进行 1 次操作后,G 可能如下:
- 以 1/2 的概率,存在边 (1,2)。
- 以 1/2 的概率,存在边 (2,3)。
无论哪种情况,G 都是森林,因此 K=1 时的答案是 1。
进行 2 次操作后,G 可能如下:
- 以 1/4 的概率,存在边 (1,2),(1,2)。
- 以 1/4 的概率,存在边 (2,3),(2,3)。
- 以 1/2 的概率,存在边 (1,2),(2,3)。
只有存在边 (1,2),(2,3) 时,G 是森林。因此,所求概率为 1/2,对 998244353 取模后输出 499122177。
由 ChatGPT 4.1 翻译