2079: [Poi2010]Guilds

Time Limit: 10 Sec  Memory Limit: 259 MB
Submit: 237  Solved: 181
[Submit][Status]

Description

Zy皇帝面临一个严峻的问题,两个互相抵触的贸易团体,YYD工会和FSR工会,他们在同一时间请求在王国各个城市开办自己的办事处。这里有n个城市,其中有一些以双向马路相连,这两个工会要求每个城市应该做到: 1:有这个工会的办事处或 2:和另外一个符合1条件的城市有马路直接相连。(也就是每个城市必须是YYD的公会,但是又和FSR的公会的城市相连,或者是FSR的,和YYD的城市相连,或者和两个工会的城市相连)但是Zy怀疑不正当的竞争,他担心一个城市有两个工会的办事处,(就是说一个城市不能有两个工会的办事处)只将导致贸易的垄断(政治怎么学的),所以他请求他日夜栽培的你给予帮助。

Input

输入:两个整数n(1<=n<=200000)和m(1<=m<=500000),n代表城市数,m代表道路的总数,接下来m行每行两个整数ai和bi,表示城市ai和城市bi有道路相接。不会有重边。

Output

输出:如果这些公会的办事处能够不违反规则的开办则第一行输出TAK(波兰语的Yes),如果这些工会的办事处无法按照规则开办,就输出NIE(波兰语的No)。

Sample Input

7 8
1 2
3 4
5 4
6 4
7 4
5 6
5 7
6 7

Sample Output

TAK

YYD的城市是圆圈,FSR的城市是菱形.

HINT

 

Source

题解:
想到了孤立点肯定误解,其他情况都行?但是不敢写,因为不知道其它点怎么染色。
看了题解发现是这样的:

把图看成树(忽略多余边),奇数层染K,偶数层染S就可以了。。

orzzzzz

代码:

  1. #include<cstdio>
  2. #include<cstdlib>
  3. #include<cmath>
  4. #include<cstring>
  5. #include<algorithm>
  6. #include<iostream>
  7. #include<vector>
  8. #include<map>
  9. #include<set>
  10. #include<queue>
  11. #include<string>
  12. #define inf 1000000000
  13. #define maxn 200000+5
  14. #define maxm 500+100
  15. #define eps 1e-10
  16. #define ll long long
  17. #define pa pair<int,int>
  18. #define for0(i,n) for(int i=0;i<=(n);i++)
  19. #define for1(i,n) for(int i=1;i<=(n);i++)
  20. #define for2(i,x,y) for(int i=(x);i<=(y);i++)
  21. #define for3(i,x,y) for(int i=(x);i>=(y);i--)
  22. #define mod 1000000007
  23. using namespace std;
  24. inline int read()
  25. {
  26. int x=,f=;char ch=getchar();
  27. while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
  28. while(ch>=''&&ch<=''){x=*x+ch-'';ch=getchar();}
  29. return x*f;
  30. }
  31. int n,m;
  32. bool f[maxn];
  33. int main()
  34. {
  35. freopen("input.txt","r",stdin);
  36. freopen("output.txt","w",stdout);
  37. n=read();m=read();
  38. for1(i,m)f[read()]=,f[read()]=;
  39. for1(i,n)if(!f[i]){printf("NIE\n");return ;}
  40. printf("TAK\n");
  41. return ;
  42. }

BZOJ2079: [Poi2010]Guilds的更多相关文章

  1. BZOJ2079 [Poi2010]Guilds 【贪心】

    题目链接 BZOJ2079 题解 题意就是黑白染色,要求相邻点存在不同颜色的点 显然从一个点出发,相邻点如果没有染色,染不同颜色,那么一个联通块一定会满足要求 证明:在\(dfs\)树上,每个点父亲和 ...

  2. BZOJ2079:[POI2010]Guilds(乱搞)

    Description Zy皇帝面临一个严峻的问题,两个互相抵触的贸易团体,YYD工会和FSR工会,他们在同一时间请求在王国各个城市开办自己的办事处.这里有n个城市,其中有一些以双向马路相连,这两个工 ...

  3. 【DFS】bzoj2079 [Poi2010]Guilds

    对一棵树黑白染色一定符合题意. 图一定有生成树. 因此,仅有一个孤立节点的联通块不合题意. DFS. #include<cstdio> using namespace std; int n ...

  4. 【bzoj2079】[Poi2010]Guilds 构造结论题

    题目描述 Zy皇帝面临一个严峻的问题,两个互相抵触的贸易团体,YYD工会和FSR工会,他们在同一时间请求在王国各个城市开办自己的办事处.这里有n个城市,其中有一些以双向马路相连,这两个工会要求每个城市 ...

  5. BZOJ 2079: [Poi2010]Guilds

    Description 问一个图是否有二染色方案,满足每个点都跟他颜色不用的点有连边. Sol 结论题. 除了只有一个点,否则任何图都能被二染色. Code /******************** ...

  6. bzoj 2079: [Poi2010]Guilds——结论题

    Description Zy皇帝面临一个严峻的问题,两个互相抵触的贸易团体,YYD工会和FSR工会,他们在同一时间请求在王国各个城市开办自己的办事处.这里有n个城市,其中有一些以双向马路相连,这两个工 ...

  7. POI2010题解

    POI2010题解 我也不知道我为什么就开始刷POI了 有些题目咕掉了所以不完整(我都不知道POI到底有多少题) [BZOJ2079][Poi2010]Guilds (貌似bz跟洛谷上的不是一个题?) ...

  8. [原博客] POI系列(3)

    正规.严谨.精妙. -POI BZOJ 1131 : [POI2008]Sta 树形dp吧,让求找一个点使以这个点深度和最小.首先可以随便整出来一棵树,对于每个节点记录down[i]以i为根下面的点的 ...

  9. bzoj AC倒序

    Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...

随机推荐

  1. OpenGL —— 基础笔记

    1.基础博文    链接:http://blog.csdn.net/lotusone?viewmode=contents 2.绘制文字    链接:http://www.cnblogs.com/xia ...

  2. [RxJS] Creation operators: from, fromArray, fromPromise

    The of() operator essentially converted a list of arguments to an Observable. Since arrays are often ...

  3. WinSock IO模型 -- WSAEventSelect模型事件触发条件说明

    FD_READ事件 l  调用WSAEventSelect函数时,如果当前有数据可读 l  有数据到达时,并且没有发送过FD_READ事件 l  调用recv/recvfrom函数后,仍然有数据可读时 ...

  4. 《UNIX网络编程》之多客户连接服务端,可重用套接字对

    该网络编程之客户端与服务端程序模板支持: 1. 多客户端同时连接服务端,即服务程序可以同时为多个客户端服务: 2. 服务端支持套接字对重用,即即使处于TIME_WAIT状态,仍可支持服务端重启: 3. ...

  5. angularjs手动解析表达式($parse)

    <!DOCTYPE html> <html lang="zh-CN" ng-app="app"> <head> <me ...

  6. IPC进程间通信 - AIDL+Binder

      原理 http://www.linuxidc.com/Linux/2012-07/66195.htm   服务端,客户端处在用户空间,而binder驱动处在内核空间. 服务器端.一个Binder服 ...

  7. thinkphp3.2.3 成功对接支付宝接口

    一.首先下载支付宝官方接口,下载地址: https://b.alipay.com/order/productDetail.htm?productId=2012111200373124&tabI ...

  8. TCP Linger的坑

    昨天和同事奋战几个小时,解决了一个linger造成的bug. 现象是这样的,这是一个我从原型接手,扩充了各种功能成为可用代码的epoll实现的非阻塞socket server程序,接收大量的短连接,测 ...

  9. 8、第八次课jquery第一节20151006

    1.JS JQUERY 的区别 jquery 底层基于js 它是对于JS进行封装,代码量比较少.[write less do more] 网上可以下载jquery 类库文件,写的时候需要智能提示在js ...

  10. JavaScript网页制作特效

    一.什么是JavaScript? 网页交互特效的脚本语言. 特效 二.BOM对象 能够使得JavaScript和浏览器进行对话. 主要是使用Window对象进行操作. History对象:历史,可以实 ...