博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU 1856
阅读量:5141 次
发布时间:2019-06-13

本文共 2374 字,大约阅读时间需要 7 分钟。

 

对于这道题,主要就是让你求出有最多结点的树的树叶;

我们只要利用并查集的知识吧所输入的数据连接成树,然后逐一找出树叶最多的树就可以。利用一个num数组,在最开始的时候每个节点自己是一颗树,num[i]=1;在之后把在同一个父亲结点的num[i]连接起来。

再逐一查找出最大的就可以啦。

思路就是这样啊,可是我的提交上就是wa,心灰意冷啊,啊,啊啊,啊啊啊。我把我的代码贴上面,希望大神们看见帮我改一改。

1 #include
2 #include
3 #include
4 #include
5 using namespace std; 6 const int M=10000000; 7 int fa[M],num[M]; 8 void init(){ 9 for(int i=1;i<=M;i++){10 fa[i]=i;11 num[i]=1;12 }13 }14 int fin(int x){15 return fa[x]=x?fa[x]:fa[x]=fin(fa[x]);16 }17 void unin(int x,int y){18 int p=fin(x);19 int q=fin(y);20 if(p!=q){21 fa[p]=q;22 num[q]+=num[p];23 }24 }25 int main()26 {27 int n,a,b;28 while(~scanf("%d",&n)){29 if(n==0){30 printf("1\n");31 continue;32 }33 int ans=0;34 init();35 for(int i=0;i
ans)ans=a;38 if(b>ans)ans=b;39 unin(a,b);40 41 }42 int maxn=0;43 for(int i=1;i<=ans;i++){44 if(num[i]>maxn)45 maxn=num[i];46 }47 cout<
<
View Code

 下面的这个是我在网上查找的大神的代码,我俩除啦参数之外是一样一样的啊,我的咋就不过呢。。。。。

1 #include
2 #define N 10000000 3 int father[N],num[N]; 4 void initial()/*初始化*/ 5 { 6 int i; 7 for(i=1;i<=N;i++) 8 { 9 father[i]=i;10 num[i]=1;/*开始时数量都为1,根节点为自己*/11 }12 }13 int find(int x) /*寻找根节点*/14 {15 if(father[x]!=x)16 father[x]=find(father[x]);17 return father[x];18 }19 void merge(int a,int b)/*合并a和b*/20 {21 int p=find(a);22 int q=find(b);23 if(p!=q)24 {25 father[p]=q;26 num[q]+=num[p];/*合并集合中元素个数*/27 }28 }29 int main()30 {31 int n,a,b,i,sum,max;32 while(~scanf("%d",&n))33 {34 if(n==0)35 {36 printf("1\n");37 continue;38 }39 max=0;40 initial(); /*初始化*/41 for(i=0;i
max)45 max=a;46 if(b>max)47 max=b;48 merge(a,b); /*合并集合*/49 }50 int Max=0;51 for(i=1;i<=max;i++)52 if(num[i]>Max) /*查找最大值*/53 Max=num[i];54 printf("%d\n",Max);55 }56 return 0;57 }
View Code

 

转载于:https://www.cnblogs.com/shangjindexiaoqingnian/p/5830896.html

你可能感兴趣的文章
MySQL学习9 - 单表查询
查看>>
利用kubeadm部署k8s
查看>>
如何在MVC中显示条形码图片(以内存流的方式)
查看>>
解析文件夹下的所有二维码,并输出二维码中的信息
查看>>
高精度加减
查看>>
表单验证
查看>>
python细节2
查看>>
游戏引擎 Unity 的入门易精通难体现在哪?为什么?
查看>>
用标签、按钮和文本框编辑一个个人信息简介页面
查看>>
SQL查询xml内容
查看>>
jzoj5813
查看>>
HttpServletRequest 获取URL的方法及区别
查看>>
VMware环境和Window环境进行网络连接的问题
查看>>
macOS10.12允许所有来源设置
查看>>
C++有关 const & 内敛 & 友元&静态成员那些事
查看>>
函数积累
查看>>
python搜索引擎(转)
查看>>
python基础(三)
查看>>
json详解
查看>>
iOS开发日记3-微信支付
查看>>