一道简单的并查集题目
Sample Input
3
1
a=a
2
b=c
c=d
4
b=a
c=d
d=b
e=f
Sample Output
a
none
a b d
//这个题目没有什么好说的,直接并查集OK,
//之所以写这个题目是为了练一下并查集。

#include "iostream" using namespace std; #define size 101 int father[size]; char ans[27]; int find(int k) { return father[k]==k?k:father[k]=find(father[k]); } int main() { int T, N, flag; char left, mid, right; cin>>T; while(T--) { cin>>N; for(int i=0; i<27; i++) father[i]=i; flag = 0; for(int i=0; i<N; i++) { cin>>left>>mid>>right; if(left=='a' && right=='a') flag = 1; father[left-'a']=find(right-'a'); } int j=0; for(int i=0; i<27; i++) if(father[i]==0) ans[j++]=i+'a'; if(j==1 && flag) cout<<"a"<<endl; else if(j>1) { for(int i=0; i<j-1; i++) cout<<ans[i]<<" "; cout<<ans[j-1]<<endl; } else cout<<"none"<<endl; } }
posted on 2011-10-22 22:25 More study needed. 阅读(472) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架