1 条题解
-
1
#include<bits/stdc++.h> using namespace std; int n,a,b,mx=0,ans=0; vector<int> k[100001]; bool is[100001]={0}; void dfs(int num,int node){//求树深度函数 mx=max(mx,num); is[node]=1; for(int i=0;i<k[node].size();i++){ if(!is[k[node][i]])dfs(num+1,k[node][i]); } is[node]=0; } int main(){ cin>>n; for(int i=1;i<n;i++){ cin>>a>>b; k[a].push_back(b); k[b].push_back(a); } dfs(1,1); cout<<ans<<endl; for(int i=2;i<=n;i++){ if(i<=mx)ans++; else ans+=2; cout<<ans<<endl; } return 0; }
- 1
信息
- ID
- 343
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 31
- 已通过
- 26
- 上传者