
2-sat
CHN_JZ
爆0 forever
展开
-
[2-sat]HDU 1814——Peaceful Commission
题目传送门题目概述有n个党派,每个党派有两名成员且必须派出一名成员参加和平会议,给出m个不合的人,求字典序最小的方案。解题思路裸的2-sat,假设每个党派有成员A,BA,B,如果有AA和A′A'不合,则可以推出A−−>B′A-->B'A′−−>BA'-->B −−>-->表示选择前者就必须选择后者,显然也是这么建边的。 因为要求字典序最小的方案,所以O(NM)刷了。#include<cstdio原创 2017-07-02 21:07:36 · 592 阅读 · 1 评论 -
[二分+2-sat]Hdu 3622——Bomb Game
题目传送门题目概述在一个无限大的平面里画n个圆。 每个圆有2个待选的放置位置。 限制条件为圆不相交,求最小半径的最大值。解题思路显然如果R满足限制条件,那么任意r(r<<R)肯定满足限制条件,想到用二分枚举答案。 接下来考虑如何验证。 不难发现这是一个2-sat问题。 假设位置i,ji,j以当前最小半径做圆相交,显然可以得到i−>j′i->j' j−>i′j->i' 如原创 2017-07-04 21:49:04 · 861 阅读 · 1 评论 -
[2-sat]POJ 3683——Priest John's Busiest Day
题目传送门题目概述安排n个婚礼是这n个婚礼没有时间相交。 每个婚礼有2个安排时间段。解题思路不难看出这题是一道求2-sat任意解问题。 如果时间段i,ji,j相交,则有i−>j′i->j'j−>i′j->i' 如果看不懂上面这句话点这里接下来用tarjan缩点是毋庸置疑的,因为如果你选择了ii则所有与ii处在同一环上的点都要被选择。接下来就是如何求答案的问题。 网上有介绍刷拓扑然后染色。原创 2017-07-04 22:17:05 · 902 阅读 · 2 评论 -
[2-sat]codeforces 875 C——National Property
题目梗概给出一些小写字符串,要求把一些单词改成大写,使得这些字符串的字典序与输入给出顺序相同。解题思路对于一个字符只有改和不改两种状态,所以马上想到2-sat。考虑如何建边,对于相邻的两个字符串,假设找到最近的不相同的两个字符a.b。如果a>b,那么a必须改大写,且b必须改小写。如果a#include<cstdio> #include<cstring> #include<vector> #inclu原创 2017-10-17 13:28:40 · 1109 阅读 · 0 评论