2-SAT
HonniLin
double fighting
展开
-
POJ 3678 - Katu Puzzle(2-SAT)
题目:http://poj.org/problem?id=3678题意:有一个n元素的集合, 给出元素之间的关系,(and,or, xor),求出是否满足有满足这样关系的集合.思路:2-SAT, 每一个点只能取0/1.规律: a and b ==1 , !a->a , !b -> b (a=1, b=1) a and b ==0 , a原创 2015-04-01 21:23:21 · 533 阅读 · 0 评论 -
POJ 2723 - Get Luffy Out(2-SAT)
#题目:http://poj.org/problem?id=2723#题意:2*n把钥匙, 两两配对成n对,用其中一把另一把就会消失.m个门, 每个门上有两把锁, 打开其中一把就可以打开门. 门打开的顺序应该按照输入的顺序.求出最多能打开几扇门.#思路:每对钥匙只能用其中一把,每个门至少打开一把锁, 符合2-SAT...1.对于N个点(A,B)表示钥匙,只能用其中的原创 2015-04-02 14:12:37 · 514 阅读 · 0 评论 -
POJ 3683 - Priest John's Busiest Day(2-SAT)
题目;http://poj.org/problem?id=3683当模版.AC.#include #include #include #include #include using namespace std;const int maxn = 1005;int n, m;int S[maxn], T[maxn], D[maxn];int V;vector原创 2015-04-01 14:33:13 · 527 阅读 · 0 评论 -
POJ 2749 - Building roads(2-SAT+二分)
题目:http://poj.org/problem?id=2749题意:有n个牛棚, 有两个特殊点P1, P2,牛棚只能连接P1, P2, 有A个牛棚不能连在同一个点,有B个牛棚一定要连在同一个点,求出最小的最长距离,(距离是曼哈顿距离.思路:2-SAT + 二分.每次二分后重新建边,互为敌人,互为朋友,以及距离超过mid的两点不能建边.关键是边的相连.想把或表达式原创 2015-04-06 10:12:27 · 605 阅读 · 0 评论 -
UVALive 3211 - Now or later(2-SAT + 二分)
题目:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=72618#problem/E题意:n架灰机, 有早着陆和晚着陆两个时间,要使得着陆安全即同一时间只能有一架灰机着陆,求出相邻两个着陆时间的最小值.思路:最小值尽量大, 使用二分.使用强连通分量的2-SAT会超时.要使用染色法AC.#include原创 2015-04-07 17:30:48 · 527 阅读 · 0 评论 -
UVALive 3713 - Astronauts(2-SAT)
题目:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=72618#problem/F题意:有A,B,C三个任务要分给n个宇航员,年龄大于等于平均年龄的分A, 年龄小于平均年龄的分在B,C组没有界限,互为敌人的两个宇航员不可以在同一组.求出一个分配的方案.思路:2-SAT.同一年龄互为敌人:x^y=1 !x^!y原创 2015-04-07 16:37:42 · 505 阅读 · 0 评论 -
HDU 4421 - Bit Magic(2-SAT)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4421题意:给出一个矩阵,询问是否存在一个a序列,使得符合矩阵中,b【i%2=1】【j%2=1】= a[i]|b[j] ; b【i%2=0】【j%2=0】= a[i] & a[j];其他b【i】【j】 = a[i]^b[j].思路:将数的每个二进制位分别建图,跑2-SAT.AC.原创 2015-09-17 15:21:43 · 427 阅读 · 0 评论