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

东方博宜OJ 1776:谁的孙子最多 II ← 邻接表 or 链式前向星

【题目来源】
https://oj.czos.cn/p/1776

【题目描述】
给定一棵树,其中 1 号结点是根结点,问哪一个结点的孙子结点最多,有多少个。(孙子结点,就是儿子结点的儿子结点。)

【输入格式】
第一行一个整数 N(N≤10000),表示树结点的个数。
此后 N-1 行,第 i 行包含一个整数 fi,表示 i+1 号结点的父亲。

【输出格式】
一行两个整数,表示孙子结点最多的结点,以及其孙子结点的个数,如果有多个,输出编号最小的。

【输入样例】
5
1
1
2
4

【输出样例】
1 1

【数据范围】
N≤10000

【算法分析】
● 孙子节点的界定

boyi2166

孙子结点,就是儿子结点的儿子结点。在上图中,节点 1 的孙子节点为节点 2,节点 2 的孙子节点为节点 3、4、5,节点 3 无孙子节点,节点 4 无孙子节点,节点 5 的孙子节点为节点 6,节点 6 无孙子节点。

● 链式前向星、邻接表
链式前向星:https://blog.csdn.net/hnjzsyjyj/article/details/139369904
邻接表(无向无权图):https://blog.csdn.net/hnjzsyjyj/article/details/101233779
邻接表(有向无权图):https://blog.csdn.net/hnjzsyjyj/article/details/101233485

● 链式前向星在算法竞赛中是‌最常用‌的图存储方法,尤其在处理大规模稀疏图时,其空间和时间效率优势显著。邻接表虽简单直观,但在竞赛中已逐渐被链式前向星取代。

● 注意:由于无权图的邻接表代码简单直观,所以在处理无权图时,可以选择邻接表。

● 本题与“东方博宜1775”(https://blog.csdn.net/hnjzsyjyj/article/details/155704891)的不同点仅在于输入格式的不同,其他一样。

【算法代码一:邻接表

#include<bits/stdc++.h>
using namespace std;const int maxn=1e4+5;
vector<int> v[maxn];
int idx,imax=INT_MIN;
int n,x;int main() {cin>>n;for(int i=1; i<n; i++) {cin>>x;v[x].push_back(i+1);}for(int i=1; i<=n; i++) {int sum=0;for(int j=0; j<v[i].size(); j++) {int t=v[i][j];sum+=v[t].size();}if(sum>imax) {imax=sum;idx=i;}}cout<<idx<<" "<<imax;return 0;
}/*
in:
5
1
1
2
4out:
1 1
*/

【算法代码二:链式前向星

#include <bits/stdc++.h>
using namespace std;const int maxn=1e4+5;
int e[maxn],ne[maxn],h[maxn],idx;
int id,imax=INT_MIN;
int n,x;void add(int a,int b) {e[idx]=b,ne[idx]=h[a],h[a]=idx++;
}int main() {memset(h,-1,sizeof h);cin>>n;for(int i=1; i<n; i++) {cin>>x;add(x,i+1);}for(int i=1; i<=n; i++) {int sum=0;for(int j=h[i]; j!=-1; j=ne[j]) {int t=e[j];for(int k=h[t]; k!=-1; k=ne[k]) sum++;}if(sum>imax) {imax=sum;id=i;}}cout<<id<<" "<<imax;return 0;
}/*
in:
5
1
1
2
4out:
1 1
*/




【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/155679814
https://blog.csdn.net/hnjzsyjyj/article/details/155690173
https://blog.csdn.net/hnjzsyjyj/article/details/152726091
https://blog.csdn.net/hnjzsyjyj/article/details/152729089
https://blog.csdn.net/chensimiao0717/article/details/143650804
https://mybzjq.blog.csdn.net/article/details/137256161



http://www.jsqmd.com/news/68884/

相关文章:

  • SWG MITM
  • 重庆搬家公司应该如何选?2025年最新推荐榜单与避坑指南出炉!
  • 2025年12月漏水水浸传感器,水浸开关传感器,水浸传感器厂家权威推荐,技术实力与市场口碑深度解析​
  • 2025 年 12 月河南钢结构厂家实力推荐榜:涵盖桥梁、厂房、冷链库房、场馆等工程,匠心工艺与稳固品质深度解析
  • IDEA 报错:You aren‘t using a compiler supported by lombok
  • 2025年全自动粘钉一体机口碑厂家推荐榜出炉,有实力的全自动粘钉一体机怎么选择甄选实力品牌
  • 2025年年终防火墙产品推荐:聚焦政企核心场景与实战验证的专家选购指南及优质案例清单
  • 2025年市面上正规的制粒设备供货商推荐榜单,高效沸腾制粒机/高效湿法制粒机//高效三合一制粒机/制粒设备制造厂家选哪家
  • 2025年市面上正规的制粒设备供货商推荐榜单,高效沸腾制粒机/高效湿法制粒机//高效三合一制粒机/制粒设备制造厂家选哪家
  • 2025橱柜品牌年度盘点:十大实木家居定制厂家选择指南,欧雅斯领衔中国橱柜/衣柜定制十大头部供应商
  • 2025年12月北京会计师事务所TOP5权威测评榜单:五大专业机构实力全解析
  • 盘点2025年最值得信赖的十大干燥设备厂家,JFG-C系列高效沸腾干燥机/多功能动态干燥机/干燥设备供货厂家哪个好
  • 9
  • 2025年目前排行前列的干燥设备制造厂家找哪家,系列高效沸腾干燥机/JFG-C系列高效沸腾干燥机/干燥设备工厂怎么选择
  • day4
  • 2025年12月重庆企业搬家优质服务商推荐报告:精选重庆澳通运输!
  • RK3588 6TOPS算力如何落地,钡铼技术AXMxy BL450告诉您!
  • 2025年上海遗嘱律师推荐排行榜,哪个好?哪个靠谱?选哪个?网站网址及联系电话
  • 2025年上海遗嘱律师推荐排行榜,哪个好?哪个靠谱?选哪个?网站网址及联系电话
  • 20款国内外主流降AI率工具实测汇总(附带免费降AI工具)
  • 2025年深圳继承律师推荐排行榜,哪个好?哪个靠谱?选哪个?网站网址及联系电话
  • 2025年文具产品代加工实力厂家权威推荐榜单:工艺品来料加工/手工加工厂商/来料加工源头厂家精选
  • 【Week 37, 2025】每周阅读三篇论文
  • 2025年12月北京会计师事务所哪家靠谱?实测严选推荐
  • 喜报!南京都昌信息|医典云再次通过国家高新技术企业认定
  • 2025年深圳离婚谈判律师推荐排行榜,哪个好?哪个靠谱?选哪个?网站网址及联系电话
  • 2025年国内水果纸箱包装厂家实力及用户口碑排行榜
  • 2025年12月北京会计师事务所权威测评榜单发布:哪些机构值得信赖?
  • 萌萌战将,喵的天下,三国猫H5游戏详细图文架设教程
  • 2025年12月精轧管厂家权威推荐榜:精密精轧管、不锈钢管精轧管、冷拔管精轧管、精轧焊管,高精度与耐用性深度解析