代码求调
  • 板块题目总版
  • 楼主rainfox
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/4/15 19:33
  • 上次更新2024/4/15 21:23:13
查看原帖
代码求调
1033626
rainfox楼主2024/4/15 19:33

题目

#include<bits/stdc++.h>
#define tin int
#define itn int
#define tni int
#define nit int
#define nti int
using namespace std;
const int maxn=5e5+5;
int n,a[maxn],b[maxn],d[maxn],far;
vector<int>v[maxn];
void addedge(nit u,tni k){//读入函数; 
	v[u].push_back(k);
	v[k].push_back(u);
}
void dfs(tin u,nit fa){
	if(u>far) far =u;
	for(int i=0;i<v[u].size();i++){
		int x=v[u][i];//本行第i个	 
		if(x==fa) continue;//如果是上一个,跳过 
		u=x+1;
		dfs(x,u);
	}
}
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
    	cin>>a[i];
    	cin>>b[i];
    	addedge(a[i],b[i]);
    }
    d[1]=0;dfs(1,0);
    d[far]=0;dfs(far,0);
    cout<<d[far];
    return 0;
}
2024/4/15 19:33
加载中...