【2-SAT】URAL - 2089 - Experienced coach

题意:给出n对点a,b  要求从没对点中选出一个,且最终选出的点n个数不能存在相同的。输入数据满足每种数最多出现3次,最少出现1次

思路:第i对点的编号2*i, 2*i+1,   因为每个数最多出现3次,那么完全可以枚举每个数,然后相同的数之间的编号建立关系(¬a Λ ¬b 为真,表示这两个编号不能同时选),

然后同一对的俩编号之间也有关系(a xor b为真,代表a和b必须选且只能选一个,a xor b 可以写成 (a V b) Λ (¬a V ¬b)),这样跑完twosat就能得到一个满足情况的解或无解。

部分引用自 http://www.cnblogs.com/orchidzjl/p/5814116.html

posted @ 2017-02-07 17:45  AutSky_JadeK  阅读(212)  评论(0编辑  收藏  举报
TVアニメ「Charlotte(シャーロット)」公式サイト TVアニメ「Charlotte(シャーロット)」公式サイト