hdu 3560(dfs判环)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3560
思路:dfs判环,这里成环的条件是环中的每个点的出度和入度都为1,因此dfs的时候只须判断的相连的每个点的size()==2即可。
ps:为防暴栈手动开栈:#pragma comment(linker,"/STACk:10240000,10240000")
1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 #include<vector> 6 using namespace std; 7 #define MAXN 100100 8 #pragma comment(linker,"/STACk:10240000,10240000") 9 vector<int>map[MAXN]; 10 bool mark[MAXN]; 11 int n,m,cnt1,cnt2; 12 bool flag; 13 14 void dfs(int u){ 15 mark[u]=true; 16 if(map[u].size()!=2)flag=false; 17 for(int i=0;i<map[u].size();i++){ 18 int v=map[u][i]; 19 if(!mark[v])dfs(v); 20 } 21 } 22 23 int main(){ 24 int u,v; 25 while(~scanf("%d%d",&n,&m)&&(m+n)){ 26 cnt1=cnt2=0; 27 for(int i=0;i<n;i++)map[i].clear(); 28 for(int i=1;i<=m;i++){ 29 scanf("%d%d",&u,&v); 30 map[u].push_back(v); 31 map[v].push_back(u); 32 } 33 memset(mark,false,sizeof(mark)); 34 for(int i=0;i<n;i++){ 35 flag=true; 36 if(!mark[i]){ dfs(i);cnt1++;if(flag)cnt2++; } 37 } 38 printf("%d %d\n",cnt1,cnt2); 39 } 40 return 0; 41 }
View Code
hdu 3560(dfs判环)相关推荐
- Codeforces Round #836 (Div. 2) E.Tick, Tock(在线:带权并查集/离线:dfs判环)
题目 n*m(1<=n,m<=2e5,n*m<=2e5)的网格图, 有一些格子内已经放入了闹钟,当前时刻在[0,h)(1<=h<=1e9)之间 还有一些位置没有放闹钟,输 ...
- hdu 1625(floyd判环)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1625. 思路:大牛说是floyd判环,一想确实如此,我还一直在想如果用记忆化的怎么处理环呢...orz ...
- [Noi2008]假面舞会(dfs判环)
[Noi2008]假面舞会 Description 一年一度的假面舞会又开始了,栋栋也兴致勃勃的参加了今年的舞会.今年的面具都是主办方特别定制的.每个参加舞会的人都可以在入场时选择一 个自己喜欢的面具 ...
- POJ 3621 Sightseeing Cows(最优比率环+spfa的dfs判环优化)
题目链接 题目大意:给你一个有向图,每个点都有一个权值,每条边都有一个长度,需要找到一个各点权值和/各边长度和 最大的环出来,输出这个比值. 分析:假设结点权值为wiw_iwi,边的长度为lil_i ...
- 紫书搜索 习题7-4 UVA - 818 Cutting Chains 暴力+dfs判环+位运算
题目链接: https://vjudge.net/problem/UVA-818 题意: 选几个圆环去open.然后该圆环和其他就断开了.然后用这些open的圆环去连接剩下的圆环[最后打开的会合上], ...
- [BZOJ]1064 [NOI2008] 假面舞会 dfs判环
1064: [Noi2008]假面舞会 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 2160 Solved: 1047 [Submit][Sta ...
- Ice_cream's world I HDU - 2120(并查集判环)
题意:问给出的望塔之间的建造了围墙,将土地分成了几份 思路:用并查集判环,若有围墙相接的瞭望塔,有相同的父根,则存在环 ice_cream's world is a rich country, it ...
- HDU 1217 Arbitrage (Floyd + SPFA判环)
题目链接:HDU 1217 Arbitrage 简单的货币转换问题,给定多种货币,以及货币之间的汇率,问能否通过货币的转换实现收益. 例如: 1 US Dollar buys 0.5 British ...
- HDUOJ--4888--Redraw Beautiful Drawings【isap】网络流+判环
链接:http://acm.hdu.edu.cn/showproblem.php? pid=4888 题意:一个矩阵.限定每行行和.列和,每一个格子数字不超过k,问矩阵是否存在,如存在推断有单解还是多 ...
最新文章
- caffe实现多任务学习
- 「模型解读」从“局部连接”回到“全连接”的神经网络
- LOJ#6048. 「雅礼集训 2017 Day10」数列(线段树)
- mysql 随机update_MySQL随机查询数据与随机更新数据
- 筒灯智能驱动芯片作用_魅族发布Lipro智能吸顶灯与地脚灯 解决生活照明两大痛点...
- python作用域——LEGB规则
- typecho运行html插件,typecho主题集成HTML压缩功能
- 解决办法:VirtualBox只能安装32位的问题
- 网络安全学习--WEB服务器
- 运营进阶:打造好文案的万能公式
- 系统架构设计师考试学习目录
- pbootcms模板,pbootcms模板程序,pboot响应式模板
- DNS与GTM协同工作原理
- 万年历(hao123)代码
- 一个复杂注塑件抽取中面一般操作
- 【软件工程】软件工程中应用的几种图辨析:系统流程图、数据流图、数据字典、实体联系图、状态转换图、层次方框图、Warnier图、IPO图、层次图、HIPO图、结构图、程序流程图、盒图、PAD图、判定表
- Python Pcan USB通信(基于PcanBus)
- 进销存设计与分析_库存明细表(14)
- win7锁屏背景壁纸修改
- java实现读取文件返回字节数组