首页 / JAVA / 小阳数数 (暴力破解并查集)Java
小阳数数 (暴力破解并查集)Java
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了小阳数数 (暴力破解并查集)Java,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含991字,纯文字阅读大概需要2分钟。
内容图文
![小阳数数 (暴力破解并查集)Java](/upload/InfoBanner/zyjiaocheng/642/7d00086e1a2b4e2dab2b9f435b581638.jpg)
题目链接 小阳数数 .
题目:
分析:
由于是数字串,所以每个令牌最多包含十个数字,
遍历所有令牌,有相同的就合并,直到不能合并为止
AC代码:
import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int t=sc.nextInt();
while(t-->0){
int n=sc.nextInt();
ArrayList<HashSet<Character>> list=new ArrayList<HashSet<Character>>();
for(int i=0;i<n;i++){
HashSet<Character> set=new HashSet<Character>();
char [] c=sc.next().toCharArray();
int m=c.length;
for(int j=0;j<m;j++){set.add(c[j]);}
list.add(set);
}
int len=Integer.MAX_VALUE;
for(int i=0;i<list.size();i++){
do{
len=list.size();
HashSet<Character> newset=new HashSet<Character>();
for(int j=i+1;list.size()>i+1&&j<list.size();j++){
for(char cc:list.get(j)){
if(list.get(i).contains(cc)){
newset.addAll(list.get(j));
list.remove(j);
j--;break;
}
}
}
list.get(i).addAll(newset);
}while(list.size()<len);
}
System.out.println(list.size());
}
}
}
王跃坤
发布了62 篇原创文章 · 获赞 15 · 访问量 5913
私信
关注
内容总结
以上是互联网集市为您收集整理的小阳数数 (暴力破解并查集)Java全部内容,希望文章能够帮你解决小阳数数 (暴力破解并查集)Java所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】