| 比赛 |
?板子大赛 |
评测结果 |
WWAAATTTTT |
| 题目名称 |
消防演练 |
最终得分 |
30 |
| 用户昵称 |
exil |
运行时间 |
5.679 s |
| 代码语言 |
C++ |
内存使用 |
30.83 MiB |
| 提交时间 |
2026-01-17 13:24:58 |
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
#define int long long
vector<int> v[1000005];
signed main(){
freopen("drill.in","r",stdin);
freopen("drill.out","w",stdout);
int n;
cin>>n;
for(int i = 1;i<=n-1;i++){
int l,r;
cin>>l>>r;
v[l].push_back(r);
v[r].push_back(l);
}
int anss=0;
for(int y=1;y<=n;y++){
queue<int> q[3];
q[0].push(y);
q[1].push(v[y].size());
q[2].push(0);
int ans=0;
while(!q[0].empty()){
ans=max(ans,q[1].front());
for(int i = 0;i<v[q[0].front()].size();i++){
if(v[q[0].front()][i]==q[2].front())continue;
q[0].push(v[q[0].front()][i]);
q[1].push(q[1].front()-2+v[v[q[0].front()][i]].size());
q[2].push(q[0].front());
}
q[0].pop();
q[1].pop();
q[2].pop();
}
anss=max(anss,ans);
}
cout<<anss;
return 0;
}