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

哈尔滨公司网站团队桂林生活网官网首页

哈尔滨公司网站团队,桂林生活网官网首页,长沙做网站找谁,wordpress首页显示一张图片给定一颗树,树中包含 n 个结点(编号 1∼n)和 n−1 条无向边。 请你找到树的重心,并输出将重心删除后,剩余各个连通块中点数的最大值。 重心定义:重心是指树中的一个结点,如果将这个点删除后&a…

给定一颗树,树中包含 n 个结点(编号 1∼n)和 n−1 条无向边。

请你找到树的重心,并输出将重心删除后,剩余各个连通块中点数的最大值。

重心定义:重心是指树中的一个结点,如果将这个点删除后,剩余各个连通块中点数的最大值最小,那么这个节点被称为树的重心。

输入格式

第一行包含整数 n,表示树的结点数。

接下来 n−1 行,每行包含两个整数 a 和 b,表示点 a 和点 b 之间存在一条边。

输出格式

输出一个整数 m,表示将重心删除后,剩余各个连通块中点数的最大值。

数据范围

1≤n≤10^{5}

输入样例
9
1 2
1 7
1 4
2 8
2 5
4 3
3 9
4 6
输出样例:
4

代码:

#include<iostream>
#include<vector>
#include<algorithm>
#include<cstring>
using namespace std;const int N = 100010;
int StartNode[N],edgeTo[N*2],NextThisNode[N*2];
int idx,n,ans;
int att[N*2];void add(int a,int b){edgeTo[idx] = b;NextThisNode[idx] = StartNode[a];StartNode[a] = idx;idx ++;
}int dfs(int x){att[x] = 1;int sum = 1;int res = 0;for(int i = StartNode[x];i != -1;i = NextThisNode[i]){int j = edgeTo[i];if(att[j] == 0){int temp = dfs(j);res = max(res,temp);sum += temp;}}res = max(n - sum,res);ans = min(res,ans);return sum;
}int main(){int a,b;cin>>n;ans = n;memset(StartNode,-1,sizeof StartNode);for(int i = 0;i < n;i++){cin>>a>>b;add(a,b);add(b,a);}dfs(1);cout<<ans<<endl;return 0;
}

 

http://www.yayakq.cn/news/639514/

相关文章:

  • 2017网站设计尺寸昆明有几个区
  • 无锡网站制作高端行业网站开发程序
  • 无锡网站制作的公司有哪些自适应网站平台
  • 国外建筑网站app什么是网站空间信息
  • 自己做的网站怎么发布视频教程天津网站建设求职简历
  • gif动图素材网站商丘做网站sqlongliqi
  • 网站改版方案流程整套网站建设
  • html5 特效网站做网站难还是app难
  • 网站建设工具有哪些深圳国税局网站怎么做票种核定
  • 中煤第一建设公司网站网站建设算行政工作吗
  • 关键词优化的五个步骤无排名优化
  • 网站制作厦门公司网站用什么软件做
  • 制作网站设计的公司萍乡网站开发
  • 领动网站建设长沙创求网络科技有限公司
  • 后缀的域名暂无法进行网站备案做淘宝客网站需要注意什么
  • 国学网站源码广州在线网页制作
  • 做网站哪个系统最好鄂州最新通告今天
  • 书店网站建设网站栏目结构汽车网站建设分析报告
  • 延吉最好的网站建设公司必应站长平台
  • 网站推广优化流程四川人力资源考试官网二建
  • 可以做司法考试题的网站学校网站的建设目标是什么意思
  • 做地方短租网站百度h5在线制作免费
  • 网站建设一般都有什么项目培训机构网络推广方案
  • 国企网站建设需要注意曲阳网站建设推广
  • 做网站需要什么材料手机版网站开发人员选项
  • png素材网站北京网站建设设计公司哪家好
  • 湖州建设培训入口网站网站建设网络拓扑
  • 直播网站建设需要什么河南网站seo
  • 用记事本做网站怎么添加表格建站教程的优点
  • 企业网站建设招标文件如何完整建设一个网站