不明白为啥建双向边的进
查看原帖
不明白为啥建双向边的进
161697
ღꦿ࿐楼主2022/5/5 14:42

新建两个点,相当于两个虚拟小朋友,这样就不用考虑自己的意愿了,小朋友 n+1n + 1 是必须选0 , 和所有意愿是 0 的小朋友都是朋友的一个小朋友,n+2n + 2 同理看做必须选 1 。

考虑如果产生了矛盾,一个选1的小朋友和一个选0的小朋友是朋友:

为了方便计数,钦定关系是单向的,如果 a 选择 0 , b 选择 1 ,a b 是朋友,我们只记录这种关系,不用处理反过来的,因为每个矛盾必然对应一个这样的关系,我们称小朋友 a 生小朋友 b 的气 (非常形象?) 。

所以就是让生气的小朋友对最少,由生气的定义:不可能同时 a 生 b 的气 , b 生 a 的气 。

接下来就是套路的把图分成两部分,n+1n + 1这部分选 0 , n+2n +2那部分选 1 。其中 010 \to 1 (别想乱七八糟的(?)) 的边最少 , 于是可以转化成最小割问题,使用最大流求解。

2022/5/5 14:42
加载中...