2-SAT
「已注销」
这个作者很懒,什么都没留下…
展开
-
POJ 3207 Ikki's Story IV - Panda's Trick (2-sat)
题意:有一个有两个面的圆,给你p条边,每条边的端点都在圆上,问你能不能通过把这些边放在正面或反面,来达到这些线段都不相交的状态。 每条边当作一个点,正面和背面两种状态必取其中一种。 2-sat题。构造必选规则,然后跑tarjan缩点判断是否有矛盾,没有则一定能找到一种解。(因为tarjan跑出来一定是有向无环图(DAG))#include <iostream>#include <algorit原创 2017-07-15 19:24:01 · 109 阅读 · 0 评论 -
POJ - 3678 Katu Puzzle (2-SAT)
思路:2-SAT模板题,注意建边。 假设有点 i1 , j1, i2, j2 当只能选 i1 和 j1 点时,这样加边: addedge(i1,j1),addedge(j1,i1); addedge(i2,i1),addedge(j2,j1);//构造这组边为了使选i2,j2非法,因为只能选i1和j1#include <iostream>#include <algorithm>#incl原创 2017-07-15 19:30:16 · 125 阅读 · 0 评论 -
HDU 1814 Peaceful Commission (最小字典序 2-SAT)
思路:因为要解决最小最小字典序的问题,所以经典的2-SAT解决方法就没用了。。。只能暴力dfs。。#include <iostream>#include <algorithm>#include <cstdio>#include <string.h>#include <queue>using namespace std;const int maxn = 8010*2;struct edge原创 2017-07-20 10:23:16 · 124 阅读 · 0 评论 -
POJ 3648 Wedding (2-SAT 输出路径)
题意:有一对新人要结婚了,所以他们邀请了n对夫妻来参加婚礼。 然后就是喜闻乐见的吃饭情节了,然而在坐座位的时候有要求,桌子有两边,这夫妻不能在同一边。这是最初的条件,然后就是。。。有m对通奸关系。。。哇这样这的好吗,我还是个孩子5555~有通奸关系的不能在一边(注意这里的通奸关系是任意的,可以男男女女男女,新郎新娘也可以。。。) (我tm读完题就知道出题人脑子不正常了。。。) 然后呢,新娘由于原创 2017-07-20 10:49:15 · 224 阅读 · 0 评论 -
POJ 2723 Get Luffy Out (2-SAT)
题意:给你n对钥匙,一共2*n个钥匙。 然后不一定谁和谁配对,但给你这n个配对关系。 一对钥匙里,你只能选一把钥匙。 然后你面前有1扇门,门有两个锁,你只要任意打开一个锁就能进去,然后你面前又有一扇门。。。 给你n扇门各自所需要的锁。现在问你最多你可以过多少扇门。注意配对关系i,j,只能选其中一个,所以这么建边: ae(i,j+n) ae(j,i+n) ae(i+n,j) ae(j+n,i原创 2017-07-20 11:05:53 · 228 阅读 · 0 评论 -
POJ 3683 Priest John's Busiest Day (2-SAT 输出路径)
题目大意:一个牧师要去主持婚礼,每对新人夫妻会给你两个时间和一个持续时间,分别为 from to 和value 你可以在from到from+value的时间段里给她们们举行婚礼,也可以在to-value到to的时间段里为她们举行婚礼,但是总是要选一个的。 然后现在给你n对夫妻的。问你能不能有一种可能的方案,如果有,按照输入的顺序,将每对夫妻举行婚礼的时间段输出出来。 第i对夫妻的两个时间段可以原创 2017-07-17 13:21:58 · 235 阅读 · 0 评论 -
POJ 2749 Building roads (2-SAT)
题意:农场主的牛喜欢串门。。。(又一道奇葩题目。。) 所以农场主得给他的n个牛舍(barn)建造道路,然而农场主觉得花费太多,所以他打算建造两个中转点s1和s2,任意的牛舍要么连s1,要么连s2。 同时还有一些牛舍里的互相讨厌,所以这两个牛舍不能连到同一个中转站。 同时还有一些牛舍里的互相喜欢,所以这两个牛舍要连到同一个中转站。 给你s1和s2的坐标,然后还有n个牛舍的坐标,问你,让牛舍之间原创 2017-07-20 20:52:45 · 260 阅读 · 0 评论