社区讨论

数据过水

P4897【模板】最小割树(Gomory-Hu Tree)参与者 2已保存回复 2

讨论操作

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

当前回复
2 条
当前快照
1 份
快照标识符
@lo8hhxq0
此快照首次捕获于
2023/10/27 18:42
2 年前
此快照最后确认于
2023/10/27 18:42
2 年前
查看原帖
这数据似乎有亿点水了。
我们要跑 S,TS,T 的最小割,然后求出两个点集。这一部分我直接降智用两次 dfs 实现,每次走没有被流完的边,结果 AC 了。不过在另外两道裸题上 WA 了。
经过一个晚上的思考,我终于发现,我的算法是有问题的。比如,给你一条边权全部相同的链,跑完最小割之后,其所有边的流量全都会被流完,导致找出的两个点集分别为 {S}\{S\}{T}\{T\},显然错误。
正确的做法,应该是将最后一轮 bfs 中深度大于 00(即被访问到)的点放在 S1S_1 中,将其他点放在 S2S_2 中。这样才是正确的,并且通过这样的方式我通过了其他裸题。
综上所述,请求加强数据。
CPP
4 3
1 2 2
2 3 2
3 4 2
6
1 2
1 3
1 4
2 3
2 4
3 4
PS:由于可能会随机化找了两个点,所以上述数据有一定概率卡不掉我的做法。所以上述数据只是一个例子而已,真要卡掉的话,建议造一个长度顶天的边权全部相同的链。或者不失一般性的话,可以去把《不同的最小割》该题中我 WA 的三组数据给挖出来放到这题上并扩大数据范围。

回复

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

正在加载回复...