hdu-3062(2-SAT入门)
摘要:2-SAT入门题。类似和平委员会。模板敲错了,1W更改过来后,2YView Code #include <iostream>#include <stdio.h>#include <string.h>using namespace std;#define E 1000500#define V 2005int top,cnt,index,n,m,ecnt;bool instack[V];int stack[V],id[V],dfn[V],low[V],in[V];int head[V];struct edge{ int s,t,next;}e[E];void a
阅读全文
hdu-3622(2-SAT)
摘要:题意:有N组炸弹,2*i与2*i+1为一组,从这N组炸弹中选N个炸弹放入格子中,要求:1.同组的炸弹不能同时放入;2.放入的炸弹不能相互引爆;3.每个炸弹有相同的半径;让你求半径里最短中最长的。思路:二分答案,用2-SAT判可行性。加边时,凡是可以互相引爆的两个点互斥。注意:对double型二分。引入eps.View Code /*Problem:3622 (Bomb Game) Judge Status:AcceptedRunId:6286747 Language:G++ Author:2010201211Time:578MS Memory:2172K Len:3830B*/#include
阅读全文
POJ-3207(2-SAT)
摘要:View Code /*2-sat问题2-SAT问题,通俗的说就是有n对点(2n个点),从每对点中选出一个点,共选出n个点,而且要满足若干个这样的条件:某两点不能同时被选出。设一对点为x、~x,如果a被选出则b一定要被选出,就在图中加有向弧(a,b)表示这种关系。那么如果a,b(a!=b,a!=~b)不能同时被选出,那么加两条有向弧(a,~b),(b,~a)。这样由图的对称性可以证明,2-SAT有解等价于任取x、~x,x、~x不在一个强联通分量中。题意就是:平面上,一个圆,圆的边上按顺时针放着n个点。现在要连m条边,比如a,b,那么a到b可以从圆的内部连接,也可以从圆的外部连接。给你的信息中,
阅读全文