1116: [POI2008]CLO

Time Limit: 10 Sec  Memory Limit: 162 MB
Submit: 1180  Solved: 649
[Submit][Status][Discuss]

Description

Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 你要把其中一些road变成单向边使得:每个town都有且只有一个入度

Input

第一行输入n m.1 <= n<= 100000,1 <= m <= 200000 下面M行用于描述M条边.

Output

TAK或者NIE 常做POI的同学,应该知道这两个单词的了...

Sample Input

4 5
1 2
2 3
1 3
3 4
1 4

Sample Output

TAK

题目中问的应该是无视无向边每个town都有且只有一个入度

这样只要有联通块是棵树,答案就是NIE,否则就是TAK

用并查集维护一下就OK了

#include<stdio.h>
int fa[100005], flag[100005];
int Find(int x)
{if(fa[x]==0)return x;return fa[x] = Find(fa[x]);
}
int main(void)
{int n, m, i, x, y, t1, t2;scanf("%d%d", &n, &m);for(i=1;i<=m;i++){scanf("%d%d", &x, &y);t1 = Find(x);t2 = Find(y);if(t1!=t2){fa[t1] = t2;flag[t2] |= flag[t1];}elseflag[t1] = 1;}for(i=1;i<=n;i++){if(flag[Find(i)]==0){printf("NIE\n");break;}}if(i==n+1)printf("TAK\n");return 0;
}

bzoj 1116: [POI2008]CLO(并查集)相关推荐

  1. BZOJ 1116 [POI2008]CLO 并查集

    题意:链接 方法:并查集 解析: 第一眼神题,看完hz题解后发现被D了. 明明sb题. 如果某个连通块里存在环那么一定会达到目标状态. 为什么? 自己YY:) 所以并查集合并就行了. 代码: #inc ...

  2. BZOJ 1116 POI2008 CLO

    1116: [POI2008]CLO Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1152  Solved: 635 [Submit][Statu ...

  3. BZOJ 1116: [POI2008]CLO

    题意:Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 你要把其中一些road变成单向边使得:每个town都有且只有一 ...

  4. BZOJ1116:[POI2008]CLO(并查集)

    Description Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 你要把其中一些road变成单向边使得:每个t ...

  5. 1116: [POI2008]CLO

    1116: [POI2008]CLO https://lydsy.com/JudgeOnline/problem.php?id=1116 分析: 单独考虑每个联通块的情况. 设这个联通块里有n个点,那 ...

  6. bzoj 36733674: 可持久化并查集 by zky

    Description n个集合 m个操作 操作: 1 a b 合并a,b所在集合 2 k 回到第k次操作之后的状态(查询算作操作) 3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 0& ...

  7. BZOJ 3673: 可持久化并查集 by zky

    Description n个集合 m个操作 操作: 1 a b 合并a,b所在集合 2 k 回到第k次操作之后的状态(查询算作操作) 3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 0& ...

  8. bzoj 36733674 可持久化并查集加强版(可持久化线段树+启发式合并)

    CCZ在2015年8月25日也就是初三暑假要结束的时候就已经能切这种题了%%% 学习了另一种启发式合并的方法,按秩合并,也就是按树的深度合并,实际上是和按树的大小一个道理,但是感觉(至少在这题上)更好 ...

  9. BZOJ 3674 可持久化并查集

    https://www.lydsy.com/JudgeOnline/problem.php?id=3674 用可持久化数组维护并查集的fa数组, 查询时间复杂度为nlognlogn,一个log是并查集 ...

最新文章

  1. C++中前置声明介绍
  2. 机电传动控制课程第一周学习笔记
  3. Top 10 Security Risks for 2014
  4. eclipse如何给main函数传参数
  5. 2路由策略_route-map(执行路由策略)
  6. java应用部署docker_Docker部署JavaWeb项目实战
  7. python 装饰器 继承_Python设计模式之装饰器模式
  8. 提出邀请Do you want..._43
  9. mybatis mysql merge_使用Mybatis和druid连接池报错 merge sql error, dbType mysql, sql
  10. pcie usb3.0 驱动 for linux_Linux 中的虚拟网络
  11. Aptana中的中文显示乱码问题
  12. 读书笔记∣《世界是数字的》知识点整理
  13. 《linux核心应用命令速查》连载十五:fuser:用文件或者套接口表示进程
  14. Careercup - Microsoft面试题 - 5680049562845184
  15. Qt配置OpenCV教程,无需复杂的编译过程,(详细版)
  16. 微擎模块-微信门禁小区物业版(微信开门)
  17. 群晖docker签到京豆_在docker中建立一个自动签到站点
  18. 面试前应该怎么准备面试过程才不会紧张呢
  19. c语言求解连续数列编程题,数列-题解(C语言代码)
  20. 记录一次京东面试吧,面试的是虚拟平台的经验.

热门文章

  1. 自学python能找到工作吗-25岁从零开始学习python还能找到工作吗?
  2. python项目开发实例-有趣的十个Python实战项目,让你瞬间爱上Python!
  3. python是什么类型的语言-为什么说 Python 是强类型语言?
  4. 从零开始学习python编程-从零开始学Python程序设计
  5. 如何找到靠谱的微信小程序,公众号H5开发外包,定制开发公司?
  6. 成都专业语音转化为文字怎么样_安徽听见科技
  7. 曲线组合图 类型详情
  8. 技能高考多少分上本科计算机,技能高考多少分上一本
  9. 【计算机网络笔记】编码与调制
  10. python open可以打开什么类型文件_Python打开文件open()的注意事项