图论——2-SAT
文章平均质量分 82
XDU_Skyline
Everything is over, everything is just beginning.
展开
-
HDU 4115 Eliminate the Conflict (2011年成都赛区现场赛E题)
1.题目描述:点击打开链接 2.解题思路:本题属于2-SAT问题,第一次做这种题,还是很感兴趣的。2-SAT解决的是给定m条语句,每一条语句形如“xi为真或xj为假”,问你是否可能让所有的语句都成立。那么不难发现,本题就属于一种2-SAT问题。 首先,根据题意可知,第i轮有2种出法,要么是x[i],要么是(x[i]+1)%3。我们令xi为真表示出x[i],xi为假表示出(x[i]+1)原创 2015-08-26 12:15:28 · 654 阅读 · 0 评论 -
例题5.10 宇航员分组 LA3713
1.题目描述:点击打开链接 2.解题思路:本题属于2-SAT问题。根据题意可以发现,每个宇航员只有2种选择,因此可以用布尔变量Xi表示第i个宇航员的分配方案。年龄大于等于平均值x的要么做任务A(true),要么做任务C(false)。年龄严格小于平均值x的要么做任务B(true),要么做任务C(false)。 接下来的问题是如何描述i,j两个宇航员相互讨厌。如果他们属于同一个类型,那么Xi,X原创 2015-10-02 23:57:19 · 573 阅读 · 0 评论 -
例题5.9 飞机调度 LA3211
1.题目描述:点击打开链接 2.解题思路:本题利用二分+2-SAT解决。根据题意描述,我们可以二分最小的时间间隔x,那么可以设布尔变量Xi表示第i架飞机是否早着陆。那么如果第i架和第j架都不能早着陆。可以用“Xi为false或Xj为false”来描述。这样,我们就可以得到一个包含n个变量和不超过n(n-1)/2个子句的2-SAT问题的实例。总时间复杂度为O(N^2logT)。 3.代码: #原创 2015-10-04 23:37:29 · 447 阅读 · 0 评论