51nod-1535 深海探险
来源:互联网 发布:淘宝申诉成功率 编辑:程序博客网 时间:2024/04/28 22:56
注意: 必须只有一个环,且是连通图
思路: 并查集判一个联通分量里环的个数,再扫一遍判是否只有一个连通分量
#include <cstdio>#include <cstring>#include <queue>#include <algorithm>#include <iostream>using namespace std;typedef long long ll;const int N=105;int fa[N];int find(int x){ if(fa[x]!=x) fa[x]=find(fa[x]); return fa[x];}int main(){ int n,m; cin>>n>>m; for(int i=1;i<=n;i++) fa[i]=i; int ok=0; for(int i=1;i<=m;i++) { int u,v; cin>>u>>v; int rx=find(u); int ry=find(v); if(rx!=ry) { fa[rx]=ry; } else{ ok++; } } int cnt=0; for(int i=1;i<=n;i++) { find(i); if(fa[i]==i) cnt++; } if(ok==1&&cnt==1) printf("FHTAGN!"); else printf("NO");}
1535 深海探险
题目来源: CodeForces
基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题
收藏
关注
很久很久以前的一天,一位美男子来到海边,海上狂风大作。美男子希望在海中找到美人鱼,但是很不幸他只找到了章鱼怪。
然而,在世界的另一端,人们正在积极的收集怪物的行为信息,以便研制出强大的武器来对付章鱼怪。由于地震的多发,以及恶劣的天气,使得我们的卫星不能很好的定位怪物,从而不能很好的命中目标。第一次射击的分析结果会反映在一张由n个点和m条边组成的无向图上。现在让我们来确定这张图是不是可以被认为是章鱼怪。
为了简单起见,我们假设章鱼怪的形状是这样,他有一个球形的身体,然后有很多触须连接在他的身上。可以表现为一张无向图,在图中可以被认为由三棵或者更多的树(代表触须)组成,这些树的根在图中处在一个环中(这个环代表球形身体)。
题目保证,在图中没有重复的边,也没有自环。
Input
单组测试数据第一行给出两个数,n表示图中的点的个数,m表示图中边的数量。 (1≤ n≤100,0≤ m≤ n*(n-1)/2 )接下来m行给出边的信息,每一行有两上数x,y (1≤ x,y≤ n,x≠y)表示点x和点y之间有边相连。每一对点最多有一条边相连,点自身不会有边到自己。
Output
共一行,如果给定的图被认为是章鱼怪则输出"FHTAGN!"(没有引号),否则输出"NO"(没有引号)。
Input示例
6 66 36 45 12 51 45 4
Output示例
FHTAGN!
阅读全文
0 0
- 51nod-1535 深海探险
- 51nod 1535 深海探险
- 51Nod-1535-深海探险
- 51nod 1535 深海探险
- 51nod-1535 深海探险
- 深海探险 51Nod
- 51nod 1535 深海探险【思维+并查集】
- 51nod 1535 深海探险(并查集判联通块)
- 51nod 1535 深海探险 并查集判断环和连通度
- 深海 歌词
- 深海少女
- 51Nod 1535 思维+DFS
- 51Nod
- 51Nod
- 51nod
- 51Nod
- 51Nod
- 51Nod
- 大深坑
- Kotlin 中使用EventBus
- 更新(D-U-N-S)邓白氏码公司信息(注册勿看)
- KITTI数据集测试
- zookeeper的集群版安装
- 51nod-1535 深海探险
- 美萍车辆业务管理系统
- Hibernate的基本配置和一个简单的实例(含思维导图)
- BZOJ1477 青蛙的约会
- MYBATIS+MYSQL 批量操作数据库
- springmvc工作原理以及源码分析(基于spring3.1.0)
- Android中的简单的launcher介绍
- androidStudio JNI开发之c调java的流程和注意事项
- 同步的概念(python 版)