/*
题意:石头剪子布,现在已知n回合bob将会出什么,对alice有限制,对于u,v,w;如果w=0说明a,b回合必须出的一样
否则,必须不一样。alice如果输一回合就输了,否则就赢了
解:
2-sat
alice有两个选择要么平手要么赢。
对于第u回合,alice可以出au,bu;
对于第v回合,alice可以出av,bv;
当w=0那么第u回合和第v回合必须相同
比较au和bu。bv是否矛...
分类:
其他好文 时间:
2014-11-09 18:09:12
阅读次数:
227
/*
题意:给你一些边,每条边有一个值和一个运算符XOR OR AND求是否存在一些点使得所有的边根据这些运算符
可以符合条件的权值.
建边方式参考:http://blog.csdn.net/shuangde800/article/details/8876533
这种建边方式真好,以后就用这种了
0 -- 1
0 -- 0
1 -- 0
1 -- 1
根据预算符有矛盾就建两条边
因为这题...
分类:
其他好文 时间:
2014-11-09 15:23:40
阅读次数:
260
/*
题意:还是二进制异或,和poj3678类似
建边和poj3678一样
*/
#include
#include
#include
#define N 2100
struct node{
int v,next;
}bian[N*N];
int head[N],dfn[N],low[N],vis[N],stac[N],belong[N],yong,ans,index,top;
void init...
分类:
其他好文 时间:
2014-11-09 13:58:58
阅读次数:
236
使用time 对象的 strftime()?或者 strptime()方法。 Directive Meaning Example Notes %a Weekday as locale’s abbreviated name. Sun, Mon, ..., Sat (en_US); So, Mo, ..., Sa (de_DE) (1) %A Weekday as loc...
分类:
编程语言 时间:
2014-11-08 22:18:28
阅读次数:
359
有一些学生的成绩的数据,每个学生有sat和gpa成绩,如何找出一个最长的递增子序列,使得sat[1] gpa[2] > ... > gpa[n]思路是做一次排序,对另一维使用传统的O(nlgn)的最长递增子序列的查找,只是找到了该学生可构成的最长递增子序列的长度d时,需要另外做一次判断,是否第一维....
分类:
其他好文 时间:
2014-11-08 22:09:50
阅读次数:
300
题目地址:POJ 3678
算是2-SAT裸题了。。分类讨论就行了。。
代码如下:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define LL __int64
cons...
分类:
其他好文 时间:
2014-11-07 17:03:17
阅读次数:
181
不明白的sizeof(enum)数据结构存储问题typedef struct weekday_st{ enum week {sun=123456789,mon,tue,wed,thu,fri,sat,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,...
分类:
编程语言 时间:
2014-11-06 12:24:08
阅读次数:
290
题目地址:POJ 3683
第一次做需要输出可行解的题目。。。大体思路是先用强连通来判断是否有可行解,然后用逆序建图,用拓扑排序来进行染色,然后输出可行解。具体思路见传送门
因为判断的时候少写了一个等号。。检查了好长时间。。sad。。。
代码如下:
#include
#include
#include
#include
#include
#include
#include
#...
分类:
其他好文 时间:
2014-11-05 23:10:02
阅读次数:
218
题目一眼看去以为是4-sat。。。题意:给n(n#include #include #include #include #include #include #include #include #include #include using namespace std;#define eps 1e-8...
分类:
其他好文 时间:
2014-11-04 22:30:10
阅读次数:
344
题目地址:HDU 3622
先二分半径,然后小于该半径的不能选,对这些不能选的点对进行加边。然后判断可行性即可。
代码如下:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#d...
分类:
其他好文 时间:
2014-11-04 21:12:55
阅读次数:
221