|
|
更好的阅读体验:https://www.cnblogs.com/To-Carpe-Diem/p/19369035
那么,相当于每个党派的两个代表就是两种情况,然后直接按其说的厌恶的关系建边跑 $\text{2 - SAT}$ 即可。
每个党派 $i$ 对应2-SAT的一个布尔变量,其两个代表 $2i$、$2i+1$ 分别对应「变量为真」「变量为假」,题目中“代表a和b互相厌恶” $\to$ 约束:**不能同时选 a 和 b**,即选 a 则必须选 b 的对立代表,选 b 则必须选 a 的对立代表。
先将代表编号转为 $0$ 起始($a \rightarrow a - 1$),记a对应节点 $u$,b 对应节点 $v$; 互斥约束转化为两条有向边: 1. $u \rightarrow v \oplus 1$(选 a → 必须选 b 的对立代表) 2. $v \rightarrow u \oplus 1$(选 b → 必须选 a 的对立代表) ($\oplus 1$ 是异或操作,可快速找到每个代表的“对立代表”:偶数变奇数,奇数变偶数)。
题目313 [POI 2001] 和平委员会
AAAAAAAAAAAAAA
3
评论
2025-12-18 22:48:25
|