A - 深海探险

2023-10-25 05:41
文章标签 深海 探险

本文主要是介绍A - 深海探险,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

很久很久以前的一天,一位美男子来到海边,海上狂风大作。美男子希望在海中找到美人鱼,但是很不幸他只找到了章鱼怪。

 

然而,在世界的另一端,人们正在积极的收集怪物的行为信息,以便研制出强大的武器来对付章鱼怪。由于地震的多发,以及恶劣的天气,使得我们的卫星不能很好的定位怪物,从而不能很好的命中目标。第一次射击的分析结果会反映在一张由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"(没有引号)。

Sample Input

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

Sample Output

FHTAGN!

题意:给出两个数n,m,代表有n个节点m条边,然后跟着m行每行两个数a,b代表a跟b相连。问构成的这个图是否是一个章鱼的形状,章鱼的形状就是有一个环并且能构成一个连通图。是的话输出FHTAGN!,否则输出NO。

思路:这个题要构成章鱼只需满足两个条件,1. 构成连通图。2.只有一个环。用并查集实现,在输入的过程中进行合并,如果两个结点有共同的祖先说明形成环,那么环数加一。并且在合并完之后判断一下有几个祖先,如果有一个环并且只要一个祖先,就可以构成章鱼的形状。代码如下:

#include<stdio.h>
#include<string.h>
int f[110];
int getf(int v)
{if(f[v]==v)return v;else{f[v]=getf(f[v]);return f[v];}
}
int merge(int u,int v)
{int t1,t2;t1=getf(u);t2=getf(v);if(t1!=t2){f[t2]=t1;return 0;}return 1;
}
int main()
{int i,x,y,n,m,r,sum;while(~scanf("%d %d",&n,&m)){r=0;sum=0;for(i=1; i<=n; i++)f[i]=i;for(i=0; i<m; i++){scanf("%d %d",&x,&y);if(merge(x,y)==1)r++;}for(i=1; i<=n; i++){if(f[i]==i)sum++;}if(sum==1&&r==1)printf("FHTAGN!\n");elseprintf("NO\n");}return 0;
}

 

这篇关于A - 深海探险的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/280380

相关文章

YGG深海传奇,创造财富无限可能!

随著区块链技术的创新与游戏产业的深度融合,GameFi赛道迅速崛起,成为全球投资者与玩家瞩目的新兴领域。 成立于2020年的Yield Guild Games(YGG),作为全球区块链游戏领域的先锋公会之一,也加入到向去中心化经济模式的转型浪潮当中。 为此,YGG 决定开启新的战略布局,通过推出《深海传奇》项目,实现从传统链游公会向链游公会协议的跨越式转型。旨在构建一个更加开放、透明,并

【深海王国】小学生都能玩的单片机!番外2:Arduino控制其他元器件

Hi٩(๑ ^ o ^ ๑)۶, 各位深海王国的同志们,早上下午晚上凌晨好呀~辛勤工作的你今天也辛苦啦 (o゜▽゜)o☆ 今天大都督为大家带来单片机的新番外系列——小学生都能玩的单片机!番外2:Arduino控制其他元器件,带你学习如何使用Arduino控制如继电器、舵机、传感器等简单电元件。 (1)Arduino控制继电器开关 之前在语音模块系列章节我们已经详细介绍了继电器,这里就不多说了

【深海王国】小学生都能玩的单片机?零基础入门单片机Arduino带你打开嵌入式的大门!(8)

Hi٩(๑o๑)۶, 各位深海王国的同志们,早上下午晚上凌晨好呀~辛勤工作的你今天也辛苦啦 (o゜▽゜)o☆ 今天大都督继续为大家带来系列——小学生都能玩的单片机!带你一周内快速走进嵌入式的大门,let’s go! (8)软串口与SoftwareSerial库使用 在第六节中我们提到了,如果我们Arduino开发板的0、1号引脚接线了,即硬件串口被占用了,想给Arduino下载程序,就需要先

破碎的像素地牢探险:游戏分享

软件介绍 《破碎的像素地牢》是开源一款地牢冒险探索类的游戏,融合了日系RPG经典风格,玩家将控制主角进行未知场景的探索。除了经典地牢玩法外,游戏还添加了更多创意内容,如黑屏状态前的挑战性等,使得游戏更加富有挑战性。玩家可以选择不同职业的角色,如战士、法师、盗贼等,在地下城展开冒险之旅。 使用方法 《破碎的像素地牢》具有高度的复玩性,每局随机生成楼层、敌人和道具,带来全新的游戏体验。游戏中

【深海王国】小学生都能做的APP?AppInventor、BLE蓝牙、Arduino联合开发你的第一个手机远程控制程序(7)

Hi~ (o^^o)♪, 各位深海王国的同志们,早上下午晚上凌晨好呀~ 辛勤工作的你今天也辛苦啦(/≧ω) 今天大都督依旧为大家带来小学生都能学会的APP制作教程,帮你一周内快速开发一款可以和单片机无线通讯的手机蓝牙APP,let’s go! (7)完结篇:APP最终美化、配色、logo一应俱全 不知不觉,本系列已经来到了最后一节,大都督看好你!继续加油!最后一节,我们将完成整个手机远程控制

从高考到程序员:我的程序探险之旅

就在今天下午,湖南省教育考试院公布了 2017 年湖南省普通高等学校招生全国统一考试的卷面成绩,我的微信也瞬间被各种分段统计表和喜报刷屏,每年的这个时候总是几家欢喜几家愁。六年前的 6 月 25 日,在我的记忆中仍然是一个挥之不去的阴影。         仅仅高出一本线几分的糟糕分数让我陷入了一个很尴尬的局面,在那个暑假,填报志愿的指导书不知道被我翻了多少遍,最终我在一本志愿栏里

海洋日特别活动—深海来客——可燃冰

深海中有一种神奇的物质,似冰又不是冰。 别看它其貌不扬,但本领不小,遇火即燃,能量巨大,可谓是能源家族的新宠。它就是被国务院正式批准列为我国第173个矿种的“可燃冰”! 可燃冰到底是个啥?它都有哪些不寻常的技能?┄┄ 来吧,“中国深度—深海探索主题展”世界海洋日暨全国海洋宣传日特别活动,带我们一起探访“深海来客——可燃冰”! 2024年6月8日下午,由北

Synchronized的锁膨胀艺术:深入源码的探险之旅

1. 引言 在Java的并发编程中,synchronized关键字一直扮演着举足轻重的角色。然而,随着并发需求的不断增长和性能要求的日益提高,单纯的synchronized关键字已经无法满足所有场景的需求。从JDK 1.6开始,Java对synchronized进行了深度的优化,其中最为引人注目的便是“锁膨胀”机制。本文将详细解析synchronized的锁膨胀过程,并探讨其背后的设计原理和优化

【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(二)

文章目录 🚀Linux基础命令(二)🌈1. 寻找目录/文件命令⭐2. 创建文件命令👊3. 网络接口查询命令❤️4. 打包命令💥5. 解压命令 上期回顾: 🔥🔥🔥【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(一) 🚀Linux基础命令(二) 🌈1. 寻找目录/文件命令 find 命令用于在指定目录下查找文件和目录。它提供了强大的搜索

深海采矿现状综述

尽管目前各国的深海开采仍处于探索阶段,但是在面积达3.6亿平方公里的广阔深海区域(水深超过200米)中,人们已经发现了包括铜、锌、锰、钴甚至是稀土在内的众多高价值金属矿物。这些资源对于智能手机、笔记本电脑、太阳能电池板、风力涡轮机和电动车至关重要。 这些矿物之中,多金属结核、富钴铁锰结壳以及多金属硫化物(又称海底块状硫化物)三种矿产资源最具有开采价值。      1997年,巴