专栏文章

ABC397G 题解

AT_abc397_g题解参与者 1已保存评论 0

文章操作

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

当前评论
0 条
当前快照
1 份
快照标识符
@mip8tyek
此快照首次捕获于
2025/12/03 08:03
3 个月前
此快照最后确认于
2025/12/03 08:03
3 个月前
查看原文
显然能够二分。
check 答案是否 1\ge 1 显然不弱于最小割,所以本题明显需要使用网络流。
我们不妨直接钦定 11 到所有点的单源最短路。
具体地,我们使用一个常用的建图技巧,并求其最小割:对于一个点 di,jd_{i,j},其与 SS 连通等价于 disij\text{dis}_i \ge j,通过建立 (di,p,di,p+1,1)(d_{i,p},d_{i,p+1},1) 来强制必须断且仅断一条 ii 链上的点(特别地,需要连接 (S,di,0,+)(S,d_{i,0},+\infty))。
在此基础上,我们可以添加一些限制,形如“如果 disip\text{dis}_i \ge p,那么 disjq\text{dis}_j \ge q”。 其建边形式为 (di,p,dj,q,+)(d_{i,p},d_{j,q},+\infty)。如果 disip\text{dis}_i \le p 并且 disj>q\text{dis}_j > q,那么 di,pd_{i,p}SS 连通,dj,qd_{j,q}TT 连通,不符合是一个割的定义。你也可以使用边权的代价来废除本限制。
在本题中,如果存在一条边 (u,v)(u,v),那么显然有 disvdisu+1\text{dis}_v \le \text{dis}_u +1。也就是说对于每一个 pp,有如果 pdisvp \le \text{dis}_v,那么 pdisvdisu+1p \le \text{dis}_v \le \text{dis}_u+1,即 p1disup-1 \le dis_u。所以可以建立 (dv,p,du,p1,+)(d_{v,p},d_{u,p-1},+\infty)
(u,v)(u,v) 边权明确为 00 时,就有 disvdisu\text{dis}_v \le \text{dis}_u。如果 pdisvp \le \text{dis}_v,那么 pdisup \le \text{dis}_u。所以可以建立从 dv,pd_{v,p}du,pd_{u,p} 的边。但是你可以花费 11 的代价来撤销本限制,所以边权为 11,即需要建立 (dv,p,du,p,1)(d_{v,p},d_{u,p},1) 的边。显然对于同一条 (u,v)(u,v),一种赋权方案中其引出的边最多只会违反一个,所以最优解中这类边只会割去一个。
一个补丁就是你必须让 dis1=0,disn=mid\text{dis}_1 =0,\text{dis}_n=mid。直接固定割掉 (d1,0,d1,1)(d_{1,0},d_{1,1}) 以及 (dn,mid,T)(d_{n,mid},T) 即可。
在一次判定中,我们只需要看割是否 K+n2\le K+n-2n2n-2 是为除 1,n1,n 之外每一个点选择一个最短路的固定开销),而一共建立了 nmnm 条边,所以增广一次就是 O(nm)O(nm) 的。所以一次判定就是 KnmKnm 的。总时间复杂度为 O(Knmlogn)O(Knm \log n)

评论

0 条评论,欢迎与作者交流。

正在加载评论...