7.14 网络流与二分图

传送门

CF1717F Madoka and The First Session

发现一次操作关联到一个数 \(x\)\(x\) 在这次操作中非加即减,又因为 \(x\) 初始值与期望最终值都已知,故对于 \(x\)\(1\) 和减 \(1\) 的次数都可以确定,且确定其中一个就可以确定另一个。

我们考虑一个数 \(x\) 对它加 \(1\) 的操作数。建立这样的网络流模型:源点 \(S\) 向每一个代表一次操作的点连流量为 \(1\) 的边,每个代表操作的点向该操作对应的两个数各连一条流量为 \(1\) 的边,再由每个代表数(它的 \(s_i = 1\) )的节点向汇点 \(T\) 连一条边,流量为该数需要加 \(1\) 的次数。

对于 \(s_i = 0\) 的数,关联它的操作都连到一个点 \(H\) 上,流量为 \(1\)。设 \(s_i = 1\) 的位置连到汇点的流量和为 \(x\),再由 \(H\) 连向 \(T\) 一条流量为 \(m - x\) 的边。判断是否满流。

posted @ 2023-07-25 11:57  Semorius  阅读(22)  评论(0)    收藏  举报