hdu1814
题解:
2-sat
nm暴力
虽然似乎复杂度最低
代码:
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cstring>
using namespace std;
const int N=;
int num,ne[N],fi[N],n,m,x,y,f[N],zz[N],vis[N],S[N],top;
void jb(int x,int y)
{
ne[++num]=fi[x];
fi[x]=num;
zz[num]=y;
}
int dfs(int x)
{
if (vis[x^])return ;
if (vis[x])return ;
vis[x]=;
S[top++]=x;
for (int i=fi[x];i;i=ne[i])
if (!dfs(zz[i]))return ;
return ;
}
int slove()
{
memset(vis,,sizeof vis);
for (int i=;i<*n;i+=)
{
if (vis[i]||vis[i^])continue;
top=;
if (!dfs(i))
{
while (top)vis[S[--top]]=;
if (!dfs(i^))return ;
}
}
return ;
}
int main()
{
while (~scanf("%d%d",&n,&m))
{
memset(fi,,sizeof fi);
num=;
while (m--)
{
scanf("%d%d",&x,&y);
x--;y--;
jb(x,y^);jb(y,x^);
}
if (slove())
{
for (int i=;i<*n;i++)
if (vis[i])printf("%d\n",i+);
}
else puts("NIE");
}
return ;
}
hdu1814的更多相关文章
- hdu1814 Peaceful Commission
hdu1814 Peaceful Commission 题意:2-sat裸题,打印字典序最小的 我写了三个 染色做法,正解 scc做法,不管字典序 scc做法,错误的字典序贪心 #include &l ...
- HDU1814 Peaceful Commission 2-sat
原文链接http://www.cnblogs.com/zhouzhendong/p/8099115.html 题目传送门 - HDU1814 题面 Description 根据宪法,Byteland民 ...
- HDU3062&&HDU1814
Preface 两道2-SAT模板题. HDU3062 看题目就一眼2-SAT.一对夫妻看成一个变量,之间的矛盾可以看成限制. 考虑不同席的限制,相当于选了\(i\)就不选\(j\),即必选\(j'\ ...
- 2-sat按照最小字典序输出可行解(hdu1814)
Peaceful Commission Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- HDU-1814 Peaceful Commission 2sat
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1814 简单的2sat题. //STATUS:C++_AC_390MS_996KB #include & ...
- hdu1814 Peaceful Commission,2-sat
题目大意:一国有n个党派.每一个党派在议会中都有2个代表,现要组建和平委员会,要从每一个党派在议会的代表中选出1人,一共n人组成和平委员会.已知有一些代表之间存在仇恨,也就是说他们不能同一时候被选为和 ...
- 【POI2001】【HDU1814】和平委员会
题面 Description 根据宪法,Byteland民主共和国的公众和平委员会应该在国会中通过立法程序来创立. 不幸的是,由于某些党派代表之间的不和睦而使得这件事存在障碍. 此委员会必须满足下列条 ...
- hdu-1814(2-sat)
题意:给你n个组,m条规则,每组有俩个人,这两个人不能同时出现,然后m条规则代表着有两个人,这两个人也不能同时出现,问你是否存在每组都能出现一人的选择方案 解题思路:因为这个需要字典序输出,所以只能用 ...
- HDU1814(2-SAT)
Peaceful Commission Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
随机推荐
- Windows资源监控神器——perfmon
一.简述 笔者在用lr中control监控Windows资源的时候,有时候总是遇到卡死和报错,所以就发现了Windows自带的监控神器————perfmon. Perfmon提供了图表化的系统性能实时 ...
- cocos2dx 3.x HttpRequest GET获取数据
.h文件 #include "network/HttpClient.h" //包含头文件 // GET 函数 void createGetHttp(); void getHttp_ ...
- IOS开发-数据库总结
关于数据存储概念: 数据结构: 基本对象:NSDictionary.NSArray和NSSet这些对象. 复杂对象:关系模型.对象图和属性列表多种结构等. 存储方式: 内存:内存存储是临时的,运行时有 ...
- 877. Stone Game
问题 有偶数堆石头(数组长度为偶数),每堆石头有一些石头(数组元素为正),石头的总数是奇数.Alex和Lee两个人轮流取石头堆,每次可以从头部或尾部取,Alex先取. 给定这样一个数组,两人都以最优策 ...
- Atom插件无法下载安装解决办法,Atom使用教程,Atom常用插件
使用教程http://wiki.jikexueyuan.com/project/atom/plug-in.html atom通过setting中无法下载插件,通过apm也无法下载插件,可能是网络.co ...
- CentOS的Qt3和Qt4问题
在有的系统中,装有Qt3和Qt4, 在使用qmake生成Makefile后,直接make, 出错,说没有头文件, 如果调用了qt3的qmake,那么上头的INCPATH里的头文件路径也指向了Qt3, ...
- Could not initialize class sun.awt.X11FontManager 异常问题
查了很多资料都是建议在 catalina.sh 中增加 -Djava.awt.headless=true \ 的配置. 加了没有效果. 后来发现是因为JDK版本问题,将JDK 8换成 JDK 7后 ...
- Java如何清空数组、对象
//清空 public class Clear { public static void main(String[] args){ // List<String> a= new Array ...
- Hive常见问题
1.HQL是否区分大小写 不区分 hive> select AGE from default.studeNT; --不区分大小写,即使是表中字段 2.查看创建表过程 show create ta ...
- Eye Protection FAQ
Q: Why does smart protection not work? A: Please make sure the checkbox "Eye Protection" i ...