【题解】CF704D Captain America
作者:互联网
最开始想到 有源汇有上下界最小费用最大流 去了 /qd
这一类问题的经典做法就是,将 \(x,y\) 看成点,将点看成边,然后多半是网络流问题。
考虑令 \(r\leq b\),这样我们的目标变成了尽可能地使 \(r\) 更大。考虑建图,源点连 \(x\),\(y\) 连汇点,带上下界表示至少需要选多少和最多能选多少 \(r\) 使得其满足要求。对于每一个点就连边 \(x\rightarrow y\),流量为 \(1\),然后跑 有源汇有上下界最大流 即可。
注意到中间 \(x\leftarrow y\) 一类边流量都为 \(1\)(下界为 \(0\) 上界为 \(1\)),因此 Dinic 复杂度为 \(O(n\sqrt{m})\),同时注意到边数 \(m\) 是 \(O(n)\) 的,因此复杂度为 \(O(n\sqrt{n})\),足以通过。
方案就在残量网络上构造即可。
标签:CF704D,题解,复杂度,sqrt,下界,看成,有源,Captain,汇有 来源: https://www.cnblogs.com/qiulyqwq/p/15327635.html