当前位置: 首页 > wzjs >正文

网站建设的教程优化建站

网站建设的教程,优化建站,建设化妆品网站的成本,wordpress匿名投稿经典并查集,参加蓝桥杯的都做烂了hhhhh v [ i ] 指向父节点,num [ i ] 记录喜欢这个hobby的人数(因为一个人算一次所以就加第一次) 路径压缩这么写比较方便:(因为find ( v [ x ] ) 返回的是v[x]x 的终点情…

经典并查集,参加蓝桥杯的都做烂了hhhhh

v [ i ] 指向父节点,num [ i ] 记录喜欢这个hobby的人数(因为一个人算一次所以就加第一次)

路径压缩这么写比较方便:(因为find ( v [ x ] ) 返回的是v[x]=x 的终点情况,所以每一个路径上的节点都指向这个终点。)

int find(int x){if(v[x]!=x) v[x]=find(v[x]);return v[x];
}

接着就遍历一遍v [ i ] ,如果不是终点(v [ i ] != i)就把该点的人数 num [ i ] 传递给num [ v[ i ] ]

最后就是把 数组num 排序找到人数不是 0 的节点就可以啦~ 

#include<iostream>
using namespace std;
char s;
int v[1050]={0},num[1050]={0},ans,n,k,temp,first;
int find(int x){if(v[x]!=x) v[x]=find(v[x]);return v[x];
}
void merge(int a,int b){a=find(a);b=find(b);v[b]=a;
}
bool cmp(int a,int b){return a>b;
}
int main(){cin>>n;for(int i=0;i<=1000;i++)v[i]=i;for(int i=0;i<n;i++){cin>>k>>s>>first;for(int j=1;j<k;j++){cin>>temp;merge(first,temp);}num[v[first]]++;}for(int i=0;i<=1000;i++){if(v[i]!=i){num[v[i]]+=num[i];num[i]=0;}}sort(num,num+1001,cmp);for(int i=0;i<=1000;i++)if(num[i]!=0)ans++;cout<<ans<<endl;for(int i=0;i<ans;i++){if(i)cout<<" ";cout<<num[i];}return 0;
}

http://www.dtcms.com/wzjs/89795.html

相关文章:

  • 网站支付界面怎么做网站建设与维护
  • 购物网站怎么做项目简介查询域名注册信息
  • wordpress怎么批量上传文章网站优化推广招聘
  • 百度网站建设是什么百度公司招聘
  • 企业做网站天津百度高级搜索技巧
  • 做多媒体挣钱吗网站优化排名金苹果下拉
  • 神马推广关键词优化有哪些作用
  • 西安 网站建设国内军事新闻最新消息
  • 网站中flash怎么做的一站式网站建设公司
  • 银川建立网站店铺在百度免费定位
  • 浙江企业响应式网站建设设计网站制作公司有哪些
  • 网站建设福建seo在线培训
  • wordpress搭建电商关键词排名优化公司哪家强
  • 济南香港国际网站建设产品软文是什么意思
  • 建设报名系统网站是真的么厦门seo全网营销
  • 西安做网站公司报价营销推广活动方案
  • 个人自制导航网站西安seo工作室
  • 网站做赌博做任务新出的app推广在哪找
  • 制造业人才网优化推广关键词
  • 在线视频网站开发成本广告公司业务推广
  • 天津网站建设制作设计官方百度app下载安装
  • 佛山中小企业网站制作合肥网站
  • 沈阳做网站优秀公司自己怎么优化我网站关键词
  • 批量优化网站软件重庆百度seo公司
  • 富阳网站建设seo服务外包价格
  • 网络营销策略定义快抖霸屏乐云seo
  • 用自己电脑做网站网络营销模式下品牌推广途径
  • 我想卖东西去哪个网站seo快速排名网站优化
  • 做网站需要的技术网站建设费用都选网络
  • 淘宝客做网站链接怎么优化自己网站