#includeusing namespace std;struct Date{ int year,month,day;};enum Week{MON=1,TUE,WED,THU,FRI,SAT,SUN,};int isLeapYear(int y){ if((y%4==0&&y%100!=0)||...
分类:
编程语言 时间:
2014-11-04 18:56:56
阅读次数:
305
题目地址:POJ 3207
找好矛盾关系,矛盾关系是(2,5)和(3,6)这两个只能一个在外边,一个在里边,利用这个矛盾关系来建图。
可以用在外边和里边来当1和0,最后判断每对是否出现矛盾。
代码如下:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#inc...
分类:
其他好文 时间:
2014-11-04 00:16:28
阅读次数:
228
题目链接
思路:2-SAT的模版题
代码:
#include
#include
#include
#include
#include
using namespace std;
const int MAXN = 10005;
struct TwoSAT{
int n;
vector g[MAXN * 2];
bool mark[MAX...
分类:
其他好文 时间:
2014-11-03 11:33:52
阅读次数:
302
题目地址:HDU 1824
这题可以把每队的两个队员看成一个,这样就是2-sat水题了。。。
代码如下:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define LL _...
分类:
其他好文 时间:
2014-11-01 19:16:14
阅读次数:
175
题目地址:HDU 3062
2-sat第一发。水题。。
首先假设A,A'为同一组的两个布尔变量且不能同时选择同一组的两个变量。如果存在一种同时选择了A和A'的方案,则该方案无解。
设为选择X就必须选择Y,则基本的建图如下:
A,B不能同时选:,表示选择A就必须不能选择B,选择B就不能选择A
A,B不能同时不选:,表示不选A则必须选B,不选B则必须选A
A,B必须同时选或同时不选:,略。...
分类:
其他好文 时间:
2014-10-31 22:15:34
阅读次数:
180
作者:陈斌(redguardtoo)版本:20141018更新时间: 2014-10-18 Sat原创时间: 2012-01-31 Tue版权:本文採用下面协议进行授权,自由转载 - 非商用 - 非衍生 - 保持署名 | Creative Commons BY-NC-ND 3.0,转载请注明作者及出...
分类:
系统相关 时间:
2014-10-31 10:00:11
阅读次数:
748
一开始题意没读懂 = =题意:比如说对于表盘上a到b、c到d都要连边,这两个边不能交叉。这两个边要么都在圆内要么都在圆外,而且可以是曲线= =比如这种情况:(Reference:http://blog.csdn.net/l04205613/article/details/6668318)(左边情况看...
分类:
其他好文 时间:
2014-10-30 00:06:50
阅读次数:
240
写了那么多模拟题这题算是最难的了QAQ好神,,,我于是补了一下并查集。。并查集很神。。。。。。orz种类并查集。。。orz对于维护sat,我们可以这样想:如果x和y的xor是true,那么x和y肯定不一样,那么我们有s[x]=s[y]^1否则s[x]=s[y]我们需要维护的是一系列的x和y之间的关系...
分类:
其他好文 时间:
2014-10-29 20:59:45
阅读次数:
161
原题模型:两者(A,B)不能同时取 1 #include "cstdio" 2 #include "vector" 3 #include "stack" 4 #include "cstring" 5 using namespace std; 6 #define maxn 2010 7 ...
分类:
其他好文 时间:
2014-10-29 16:40:15
阅读次数:
230
2-sat总结
2-sat问题,一般表现的形式为,每个点有两种方式a,b,要么选a,要么选b,并且点点之间有一些约束关系,例如:u和v至少一个选a,那么这就是一个表达式,把a当成真,b当成假,那就是u真或v真,2-sat的题目就是这样,给定这些约束,判断是否会矛盾
注意表达式的转化形式,(其实就是离散数学中那几种转换方式)
比如(u真且v真)或(u假且v假)就可以转化成(u真或v假)...
分类:
其他好文 时间:
2014-10-28 21:39:03
阅读次数:
291