数据过水
查看原帖
数据过水
87064
ducati楼主2022/7/24 07:18

这数据似乎有亿点水了。

我们要跑 S,TS,T 的最小割,然后求出两个点集。这一部分我直接降智用两次 dfs 实现,每次走没有被流完的边,结果 AC 了。不过在另外两道裸题上 WA 了。

经过一个晚上的思考,我终于发现,我的算法是有问题的。比如,给你一条边权全部相同的链,跑完最小割之后,其所有边的流量全都会被流完,导致找出的两个点集分别为 {S}\{S\}{T}\{T\},显然错误。

正确的做法,应该是将最后一轮 bfs 中深度大于 00(即被访问到)的点放在 S1S_1 中,将其他点放在 S2S_2 中。这样才是正确的,并且通过这样的方式我通过了其他裸题。

综上所述,请求加强数据。

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 的三组数据给挖出来放到这题上并扩大数据范围。

2022/7/24 07:18
加载中...