社区讨论

mxqz Matrix-Tree 定理求最小生成树计数

P4208[JSOI2008] 最小生成树计数参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@lo9iri7u
此快照首次捕获于
2023/10/28 12:05
2 年前
此快照最后确认于
2023/10/28 12:05
2 年前
查看原帖
思路就是在 kruskal\rm kruskal 的 过程中,对于每个边权的边拉出来做 Matrix-Tree,然后乘到一起就是答案。
这里用的一个思路是建一个虚点,向所有点连边,然后把这个虚点对应的行,列删掉,所以整体来看就不需要删去一行一列了。
但是,如果我这样写,
CPP
// for (int i = 1; i <= n; ++i) if (id[i] && f[i] == i) ++a[id[i]][id[i]];
        ans = 1ll * ans * det(cnt - 1) % mod;
就会 WA\tt WA70pts\tt 70pts,看数据都是把非 00 的答案算成 00 了。有没有神知道原理

回复

3 条回复,欢迎继续交流。

正在加载回复...