Submission #1172730

#TimeUsernameProblemLanguageResultExecution timeMemory
1172730ezzzayPaths (RMI21_paths)C++20
0 / 100
94 ms8260 KiB
#include<bits/stdc++.h> using namespace std; #define ff first #define ss second #define pb push_back const int N=1e5+3; vector< pair<int,int> >v[N]; pair<int,int>mx; void dfs(int a, int p, int w){ mx=max(mx,{w,a}); for(auto d:v[a]){ if(d.ff==p)continue; dfs(d.ff,a,w+d.ss); } } int dst[N][2]; void dfs2(int a, int p, int x){ mx=max(mx,{dst[a][x],a}); for(auto d:v[a]){ if(d.ff==p)continue; dst[d.ff][x]=dst[a][x]+d.ss; dfs2(d.ff,a,x); } } signed main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n,m; cin>>n>>m; for(int i=1;i<n;i++){ int a,b,c; cin>>a>>b>>c; v[a].pb({b,c}); v[b].pb({a,c}); } dfs(1,0,0); int g=mx.ss; mx={0,0}; dfs2(g,0,0); dfs2(mx.ss,0,1); for(int i=1;i<=n;i++){ cout<<max(dst[i][0],dst[i][1])<<endl; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...