P5782-[POI2001]和平委员会【2-SAT】】的更多相关文章

313. [POI2001] 和平委员会 ★★☆   输入文件:spo.in   输出文件:spo.out   评测插件时间限制:1 s   内存限制:128 MB 题目描述 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立. 不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条件: 每个党派都在委员会中恰有1个代表, 如果2个代表彼此厌恶,则他们不能都属于委员会. 每个党在议会中有2个代表.代表从1编号到2n. 编号为2i-1和…
题目描述 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立. 不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条件: 每个党派都在委员会中恰有1个代表, 如果2个代表彼此厌恶,则他们不能都属于委员会. 每个党在议会中有2个代表.代表从1编号到2n. 编号为2i-1和2i的代表属于第I个党派. 任务 写一程序: 从文本文件读入党派的数量和关系不友好的代表对, 计算决定建立和平委员会是否可能,若行,则列出委员会的成员表, 结果写入文…
http://cogs.pro:8080/cogs/problem/problem.php?pid=pyzQimjkj 题意:有n个集合,每个集合有俩元素,要从n个中各选一个放一堆,但是有的俩不能同时取,让你找出一种选取方案. 思路:2-SAT板子,主要学一下这个算法.算法流程: 构图:若a,b不能同时选,连a->b'和b->a' 求图的极大强连通子图:直接tarjan. 缩点然后变成个新的DAG:因为一个强连通分量里选一个其他都要选,一个不选其他都不能选,所以直接缩成一个点. 对新图拓排:要…
题面 Description 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立. 不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条件: 每个党派都在委员会中恰有1个代表, 如果2个代表彼此厌恶,则他们不能都属于委员会. 每个党在议会中有2个代表.代表从1编号到2n. 编号为2i-1和2i的代表属于第I个党派. 任务是写一程序: 输入党派的数量和关系不友好的代表对, 计算决定建立和平委员会是否可能,若行,则列出委员会的成员表.…
tarjan的运用 this is a problem:link 2-SAT处理的是什么 首先,把「2」和「SAT」拆开.SAT 是 Satisfiability 的缩写,意为可满足性.即一串布尔变量,每个变量只能为真或假.要求对这些变量进行赋值,满足布尔方程. 所以看这道题 若ai为真或aj为真,所以当ai为真时aj必须为假,若aj为真时ai必须为假 所以假设i为ai为真,i+n为ai为假 所以建边(i,j+n),(j,i+n),连接u,v表示选u就要选v 然后用可能出现环,所以用tarjan…
题目大意: 有n对的人,编号从1-2*n,m对的人之间互相不喜欢,每对人中必徐选1个人加入和平委员会,求字典序最小的解 -------------------------------- 2-SAT问题,由于要最小字典序,就不能scc的方法求了,只能暴力染色.O(n*m) -------------------------------- 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #inclu…
HDU 1814 Peaceful Commission / HIT 1917 Peaceful Commission /CJOJ 1288 和平委员会(2-sat模板题) Description The Public Peace Commission should be legislated in Parliament of The Democratic Republic of Byteland according to The Very Important Law. Unfortunatel…
POI 2001 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立. 不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条件: 每个党派都在委员会中恰有1个代表, 如果2个代表彼此厌恶,则他们不能都属于委员会. 每个党在议会中有 2 个代表.代表从1编号到2n.编号为2i-1和2i的代表属于第i个党派. 任务:写一程序读入党派的数量和关系不友好的代表对,计算决定建立和平委员会是否可能,若行,则列出委员会的成员表. 输入格式第一行有…
正题 题目链接:https://www.luogu.com.cn/problem/P5782 题目大意 \(n\)对人,每对之间恰好有一个人出席.\(m\)对仇恨关系表示两个人不能同时出席. 求是否有解并输出. \(1\leq n\leq 8000,1\leq m\leq 20000\) 解题思路 裸的\(\text{2-SAT}\).AJ的任务罢了. 时间复杂度\(O(n)\) code #include<cstdio> #include<cstring> #include<…
如果你不知道什么是sat问题,请看以下问答. Q:sat问题是什麽?A:首先你有n个布尔变量,然后你有一个关于这n个布尔变量的布尔表达式,问你,如果让你随意给这n个布尔变量赋值,这个布尔表达式能否成立.Q:k-sat是什麽意思?A:把sat问题中的布尔表达式不断进行转化,直到变为一个由与连接的若干个[由或连接的若干个(布尔变量或被非运算了的布尔变量)],那么所有的[]中()的数量的最大值为k.Q:怎么转化布尔表达式?A:按照 !(a||b) -> (!a)&&(!b) , !(a&a…
666DHG的大事记 2019.4.15 \(\text{ }\text{ }\text{ }\)注册洛谷 2019.8.10 \(\text{ }\text{ }\text{ }\)Luogu\(\text{ }\text{ }\text{ }\)100 \(\text{ }\)Total AC 2019.8.12 \(\text{ }\text{ }\text{ }\)第一份题解\(\text{ }\)UVA1203\(\text{ }\)Argus 2019.8.23 \(\text{ }…
近期一直在刷这方面的题 因为没法学新知识 但又想写点什么 就水篇博文吧 引理 简单来说,在一个有向图中,若所有点之间两两互相直接可达,则将这个图成为强连通分量 强连通分量可以是某个有向图中的子图 求强连通分量可以使用 Tarjan,Kosaraju 或者 Garbow 算法 个人感觉 Tarjan算法 最实用,而且后两种算法并不是很熟练,因此在这里只讲 Tarjan算法 Tarjan算法 发明者 Robert E.Tarjan 罗伯特·塔扬,美国计算机科学家 塔老爷子发明过很多算法,而且大多是以…
POJ 3207 Ikki's Story IV - Panda's Trick liympanda, one of Ikki's friend, likes playing games with Ikki. Today after minesweeping with Ikki and winning so many times, he is tired of such easy games and wants to play another game with Ikki. liympanda…
Tarjan/2-SAT Tags:图论 作业部落 评论地址 Tarjan 用来求割边或者割点,求点双联通分量或者边双联通分量 点双联通分量:两个点之间有两条点不相交的路径 边双联通分量:两个点之间有两条边不相交的路径 Tarjan求LCA还不会 2-SAT 每种物品有选或者不选两种状态,有些限制条件形如 选了\(A\)则必须选\(B\),\(A\)和\(B\)不能同时选,必须选\(A\)等等 把逻辑限制关系变成连边 a->b表示如果\(a\)成立那么\(b\)一定成立 这个要求你理解逆否命题…
\(Tarjan\)&\(2-SAT\) 标签: 知识点总结 安利XZYXZY ps:里面的部分东西来自\(Anson\)和\(yler\)和\(XZY\) 阅读体验:https://zybuluo.com/Junlier/note/1293491 \(Tarjan\)大爷 前世没见过Tarjan这么牛逼的人 并且他还弄了好多别的东西... 留这么多东西给我们...爆炸 强连通分量&割点&割边&点双&边双 简介 在有向图G中,如果两个顶点vi,vj间(vi>v…
题目大意:一国有n个党派,每个党派在议会中都有2个代表, 现要组建和平委员会,要从每个党派在议会的代表中选出1人,一共n人组成和平委员会. 已知有一些代表之间存在仇恨,也就是说他们不能同时被选为和平委员会的成员, 现要你判断满足要求的和平委员会能否创立?如果能,请任意给出一种方案.( POI 0106 ) ————————————————————————————————————————— 这道题就是裸的2—SAT 不过我用了tarjan缩点 然后一波拓排 tips:一个问题无解当且仅当一个集合的…
Reference:http://blog.csdn.net/jarjingx/article/details/8521690 其中伍昱的ppt不错. 2SAT最裸的模型: 一国有n个党派,每个党派在议会中都有2个代表,现要组建和平委员会,要从每个党派在议会的代表中选出1人,一共n人组成和平委员会.已知有一些代表之间存在仇恨,也就是说他们不能同时被选为和平委员会的成员,现要你判断满足要求的和平委员会能否创立?如果能,请任意给出一种方案.( POI 0106 ) analysis:比如有两个党派A…
题目 John is the only priest in his town. September 1st is the John's busiest day in a year because there is an old legend in the town that the couple who get married on that day will be forever blessed by the God of Love. This year N couples plan to g…
2-satisfiability,我们一般将其缩写为 2-sat. 了解全名有助于我们对这个算法的理解.     百度翻译:‘satisfiability’---“可满足性,适定性”. “合取范式可满足性问题(简称SAT问题)是一个NP完全问题.” 由于SAT问题目前是NP问题,所以自然有最大化满足性问题———MAX-SAT. 然后也有最基本的问题,生存or死亡,嫁给我or吃屎———2-SAT. 如果能解决k-sat问题,那么他一定会火,毕竟没有很好的算法去解决,目前我们研究得更多是2-sat.…
2-SAT:有趣的图论模型 什么是2-SAT SAT是适定性(Satisfiability)问题的简称.之所以研究2-sat是因为当k>2时,k-sat问题已经被证明是NPC的了. 2-sat问题简单来说就是有$n$个二元集合,其中一些元素不能同时取到,问每个集合各取一个的方案. 至于2-sat的算法,就是将不能同时取元素的限制转为有向边,再跑一遍tarjan(如果要求判断可行性):或者dfs判断是否冲突(求方案). 难就难在建模吧……或者说其他难点我还没学会? 这里有一篇论文2-sat问题和一…
PS:今天(2014.10.27)准备PPT,明天在组合数学课上与大家一起分享一下2-SAT.我以为是一件简单的事情.但是,当我看了自己这篇博客以后,发现居然还是不懂.很多资料不全,也没仔细讲.整理了一下,又修改了.尽量让自己下次再看到这博客的时候,一遍下来就能懂.虽然引用了别人的博客,我尽量讲得不需要进入别人的博客就能看懂. 一些这方面的内容写得很好的博客.(排列是随机的.可以略过了) http://www.cnblogs.com/kuangbin/archive/2012/10/05/271…
SAT 是适定性(Satisfiability)问题的简称.一般形式为 k - 适定性问题,简称 k-SAT.而当 \(k>2\) 时该问题为 NP 完全的.所以我们只研究 \(k=2\) 的情况. 定义 2-SAT,简单的说就是给出 \(n\) 个集合,每个集合有两个元素,已知若干个 \(<a,b>\) ,表示 \(a\) 与 \(b\) 矛盾(其中 \(a\) 与 \(b\) 属于不同的集合).然后从每个集合选择一个元素,判断能否一共选 \(n\) 个两两不矛盾的元素.显然可能有多种…
题目链接 题意: 和平委员会 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立. 不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条件: 每个党派都在委员会中恰有1个代表, 如果2个代表彼此厌恶,则他们不能都属于委员会. 每个党在议会中有2个代表.代表从1编号到2n. 编号为2i-1和2i的代表属于第I个党派. 任务 写一程序: 从文本文件读入党派的数量和关系不友好的代表对, 计算决定建立和平委员会是否可能,若行,则列出委员会的…
题目大意:一国有n个党派.每一个党派在议会中都有2个代表,现要组建和平委员会,要从每一个党派在议会的代表中选出1人,一共n人组成和平委员会.已知有一些代表之间存在仇恨,也就是说他们不能同一时候被选为和平委员会的成员,现要你推断满足要求的和平委员会是否能创立?假设能,请随意给出一种方案. 2-sat问题 #include <cstdio> #include <cstring> #include <vector> #include <iostream> #inc…
--DavidJing提供技术支持 现将今年7月份之前必须刷完的题目列举 完成度[23/34] [178/250] 第 1 章 贪心算法 √ [11/11] #10000 「一本通 1.1 例 1」活动安排 #10001 「一本通 1.1 例 2」种树 #10002 「一本通 1.1 例 3」喷水装置 #10003 「一本通 1.1 例 4」加工生产调度 #10004 「一本通 1.1 例 5」智力大冲浪 #10005 「一本通 1.1 练习 1」数列极差 #10006 「一本通 1.1 练习…
Description 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立. 不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条件: 每个党派都在委员会中恰有1个代表, 如果2个代表彼此厌恶,则他们不能都属于委员会. 每个党在议会中有2个代表.代表从1编号到2n. 编号为2i-1和2i的代表属于第I个党派. 任务 写一程序: 从文本文件读入党派的数量和关系不友好的代表对, 计算决定建立和平委员会是否可能,若行,则列出委员会的成员表…
原文链接http://www.cnblogs.com/zhouzhendong/p/8099115.html 题目传送门 - HDU1814 题面 Description 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立.不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条件: 每个党派都在委员会中恰有1个代表,  如果2个代表彼此厌恶,则他们不能都属于委员会.  每个党在议会中有2个代表.代表从1编号到2n. 编号为2i-1和2…
译者注:本文译自Scott H. Young的博客,Scott拥有超强的学习能力,曾在12个月内自学完成麻省理工学院计算机科学的33门课程.本文就是他个人对于这次MIT挑战的介绍和总结. 版权声明:本次翻译已经得到Scott本人授权,禁止任何形式的转载. --------------------------------------- 在接下来的12个月里,我将在不去上课的情况下,学完整个MIT四年分的计算机课程. 更新:MIT挑战现在已经结束了.我在2012年9月26日完成了挑战,距离开始时间2…
√√第一部分 基础算法(#10023 除外) 第 1 章 贪心算法 √√#10000 「一本通 1.1 例 1」活动安排 √√#10001 「一本通 1.1 例 2」种树 √√#10002 「一本通 1.1 例 3」喷水装置 √√#10003 「一本通 1.1 例 4」加工生产调度 √√#10004 「一本通 1.1 例 5」智力大冲浪 √√#10005 「一本通 1.1 练习 1」数列极差 √√#10006 「一本通 1.1 练习 2」数列分段 √√#10007 「一本通 1.1 练习 3」线…
题解来自于:http://www.cnblogs.com/kuangbin/archive/2012/10/05/2712622.html 和平委员会 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立. 不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条件: 每个党派都在委员会中恰有1个代表, 如果2个代表彼此厌恶,则他们不能都属于委员会. 每个党在议会中有2个代表.代表从1编号到2n. 编号为2i-1和2i的代表属于第I个党派…