hrbust 哈理工oj1490 咒语【基础并查集】
来源:互联网 发布:58端口多少钱一个月 编辑:程序博客网 时间:2024/05/21 13:57
咒语Time Limit: 1000 MSMemory Limit: 65535 KTotal Submit: 140(30 users)Total Accepted: 42(28 users)Rating: Special Judge: NoDescription
小w同学为了学好自己喜欢的ACM,一直fighting着......一天小w同学在做题的过程中睡着了....梦里小w同学遇到了阿拉神灯,阿拉神灯说可以帮小w同学实现一个愿望,只要通过念一些咒语即可,这些咒语是由一个个长度不超过50 的单词组成的,变化的规则是让单词的第一个字母代表的事物拥有单词的最后一个字母代表的物品,例如,apple,表示可以让‘a’事物拥有 ‘e’ 物品。小w同学说想让自己s (self)有一对翅膀w(wing),这样自己就可以去任何想去的地方了,于是阿拉神灯就说出了一些咒语....小w同学能实现自己的愿望么?
InputLine 1: 一个整数 n (1 <= n <= 200),表示咒语中包含单词的个数
Line 2..n+1: 每行一个长度不超过50的单词
OutputLine 1: 如果可以实现愿望(即存在从字母's' 到字母'w' 的单词路线),输出“Yes”,否则输出“No”.Sample Input4
fly
self
raw
year
Sample OutputYesHintself-fly-year-rawAuthorwind
问是否存在从s找到w的路。这个时候呢,我们就不要把问题想成字符串匹配的问题了,我们可以把a-z看成26个点,连接每个单词的首和尾,如果最终s和w在一条路径上,那么就存在从s到达w的路径
AC代码:
#include<stdio.h>#include<string.h>using namespace std;int f[30];int find(int x){ return f[x] == x ? x : (f[x] = find(f[x]));}void merge(int a,int b){ int A,B; A=find(a); B=find(b); if(A!=B) f[B]=A;}int main(){ int n; while(~scanf("%d",&n)) { for(int i=0;i<30;i++) { f[i]=i; } for(int i=0;i<n;i++) { char str[55]; scanf("%s",&str); int u=str[0]-'a'; int v=str[strlen(str)-1]-'a'; merge(u,v); } if(find('s'-'a')==find('w'-'a')) { printf("Yes\n"); } else { printf("No\n"); } }}
0 0
- hrbust 哈理工oj1490 咒语【基础并查集】
- 哈理工oj 1490咒语【基础并查集】
- hrbust 哈理工oj 2026 势力较量【并查集】
- 哈理工oj hrbust 1725 Virus Outbreaking【并查集】
- hrbust 1658,哈理工oj 1658 一笔画【并查集过】
- hrbust 哈理工oj 1418 夏夜星空【带权并查集】
- hrbust 哈理工oj 1360 Leyni的国家III【多路径并查集】
- hrbust/哈理工oj 1507 水神的栅栏【计算几何+并查集】
- hrbust 哈理工oj 2016 势力较量 (并查集)
- hrbust 病毒 并查集
- 并查集 hrbust 1725
- hrbust 哈理工 1013
- 哈理工 hrbust 1019
- HRBUST 1793 离线并查集
- HRBUST 1418 并查集偏移
- hrbust 2240 带权并查集
- hrbust 哈理工OJ 1918 M数【数位dp基础】
- hrbust 哈理工oj 2179 组合【基础dfs过】
- javascript中数组(Array)对象的方法和字符串(String)对象的方法
- Codeforces 651A Joysticks
- Android瀑布流照片墙实现,体验不规则排列的美感
- android:layout_weight的真实含义
- XML xml spy 5.0 注册码
- hrbust 哈理工oj1490 咒语【基础并查集】
- [BZOJ1011][HNOI2008]遥远的行星
- 理解activity的生命周期
- 文本文件与二进制的区别
- apache mina: 写数据过程
- 利用 Bootstrap 进行快速 Web 开发
- 3种PHP连接MYSQL数据库的常用方法
- 设置npm安装程序时的默认目录
- 1003. Emergency (25)