专栏文章

ARC142E 题解

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

文章操作

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

当前评论
0 条
当前快照
1 份
快照标识符
@mip8s0u7
此快照首次捕获于
2025/12/03 08:01
3 个月前
此快照最后确认于
2025/12/03 08:01
3 个月前
查看原文
首先对于一对限制 (x,y)(x,y),形象来说就是能不能将 ax,aya_x,a_ybx,byb_x,b_y 配对,使得 axbtoxa_x \ge b_{tox}aybtoya_y \ge b_{toy}。也即 min(ax,ay)min(bx,by)\min(a_x,a_y) \ge \min(b_x,b_y)max(ax,ay)max(bx,by)\max(a_x,a_y) \ge \max(b_x,b_y)。即两个数都 min(bx,by)\ge \min(b_x,b_y),至少有一个数 max(bx,by)\ge \max(b_x,b_y)。于是就可以首先把 ax,aya_x,a_ymin(bx,by)\min(b_x,b_y) chkmax
现在的限制就是 ax,aya_x,a_y 至少有一个 max(bx,by)\ge \max(b_x,b_y)。考虑最小割:我们尝试把每个点拆成 pi,jp_{i,j}。对于每个点,其与 SS 连通时,aija_i \ge j。当加边 (pi,v1,pj,v2,)(p_{i,v_1},p_{j,v_2},\infty) 时,则有限制:当 aiv1a_i \ge v_1 时,ajv2a_j \ge v_2。整张图额外连接 (pi,v1,pi,v1+1,pi,v1ai0)(p_{i,v_1},p_{i,v_1+1},p_{i,v_1}-a_{i0}),即确立选择一个权值的代价。连接 (pi,v1+1,pi,v1,+)(p_{i,v_1+1},p_{i,v_1},+\infty) 以避免一条链上割两个点。
但是本题需要的约束可是 ai<v1a_i <v_1 时,ajv2a_j \ge v_2。方向是反的。
要解决这个问题,你需要有一个惊人的注意力:如果 axbxa_x \ge b_x 并且 aybya_y \ge b_y 的话不用管。在调整过后,不会有 ax<bxa_x < b_xay<bya_y < b_y 的情况。所以我们考虑的所有点对都形如 ax<bxa_x < b_xaybya_y \ge b_y 的情况。发现 axa_xbxb_x 的大小关系本身就能将所有数分成两个确定的集合,这不是二分图吗?
考虑把所有 ax<bxa_x < b_x 的点倒过来,即把 px,vp_{x,v} 看成是 [ax<v][a_x<v]。则一个连边 (px,v1,py,v2,+)(p_{x,v_1},p_{y,v_2},+\infty) 则为如果 ax<v1a_x<v_1,那么 ayv2a_y \ge v_2。非常契合限制。
跑一遍最小割即可。

评论

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

正在加载评论...