Submission #935948

#TimeUsernameProblemLanguageResultExecution timeMemory
935948vjudge1Race (IOI11_race)C++17
Compilation error
0 ms0 KiB
#include<bits/stdc++.h> using namespace std; #define dbg(x) cout<<#x<<": "<<x<<endl; #define M 1000000007 //998244353 // #define ll long long #define pa pair<ll,ll> #define ff first #define ss second #define pb push_back #define pi acos(-1.0) #define vi vector<int> #define vll vector<ll> #define fr(i,n,j) for(i=j;i<=n;i++) #define rfr(i,n,j) for(i=n;i>=j;i--) #define ct continue; #define yo cout<<"YES"<<endl #define no cout<<"NO"<<endl #define fast ios_base::sync_with_stdio(false);cin.tie(NULL); #define all(v) v.begin(),v.end() #define endl '\n' mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); int ar[500005],br[500005],kk; vector<pa>adj[500001]; map<int,int> cnt[200001]; ll sz[500005],mx[500005],level[500006],dist[500005],ans; vector<int>sub[500005]; void dfs(int child,int par,int flag) { for(auto u:adj[child]) { if(u.ff==par)ct; if(mx[child]==u.ff)ct; dfs(u.ff,child,0); } if(mx[child]!=-1) { int u=mx[child]; dfs(u,child,1); swap(sub[child],sub[u]); } sub[child].pb(child); cnt[dist[child]][level[child]]++; for(auto u:adj[child]) { if(u.ff==par)ct; if(mx[child]==u.ff)ct; for(auto u1:sub[u.ff]) { sub[child].pb(u1); ll tmp=kk+2*dist[child]-dist[u1]; if(cnt[tmp].size()) { auto it=cnt[tmp].rbegin(); ans=min(ans,(*it).ff+level[u1]-2*level[child]); } cnt[dist[u1]][level[u1]]++; } } if(cnt[dist[child]+kk].size()) { auto it=cnt[dist[child]+kk].rbegin(); ans=min(ans,(*it).ff-level[child]); } if(flag==0) { for(auto u:sub[child]) { cnt[dist[u]][level[u]]--; if(cnt[dist[u]][level[u]]==0)cnt[dist[u]].erase(level[u]); } } } void dfs2(int child,int par) { int tmp=0,big=-1; sz[child]=0; for(auto u:adj[child]) { if(u.ff==par)ct; level[u.ff]=level[child]+1; dist[u.ff]=dist[child]+u.ss; dfs2(u.ff,child); if(sz[u.ff]>tmp)tmp=sz[u.ff],big=u.ff; sz[child]+=sz[u.ff]; } mx[child]=big; sz[child]++; } int main() { fast; ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r; te=1; //cin>>te; fr(w1,te,1) { cin>>n>>kk; fr(i,n,2) { cin>>x>>y>>z; adj[x].pb({y,z}); adj[y].pb({x,z}); } dfs2(0,-1); ans=INT_MAX; dfs(0,-1,1); if(ans==INT_MAX)ans=-1; cout<<ans<<endl; } }

Compilation message (stderr)

race.cpp: In function 'int main()':
race.cpp:92:13: warning: unused variable 'm' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |             ^
race.cpp:92:17: warning: unused variable 'j' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |                 ^
race.cpp:92:19: warning: unused variable 'k' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |                   ^
race.cpp:92:30: warning: unused variable 'l2' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |                              ^~
race.cpp:92:33: warning: unused variable 'k2' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |                                 ^~
race.cpp:92:36: warning: unused variable 'k1' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |                                    ^~
race.cpp:92:39: warning: unused variable 'q' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |                                       ^
race.cpp:92:41: warning: unused variable 'l' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |                                         ^
race.cpp:92:43: warning: unused variable 'r' [-Wunused-variable]
   92 |     ll te,n,m,i,j,k,w1,x,y,z,l2,k2,k1,q,l,r;
      |                                           ^
/usr/bin/ld: /tmp/ccWU7q0s.o: in function `main':
race.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/ccVdVJKt.o:grader.cpp:(.text.startup+0x0): first defined here
/usr/bin/ld: /tmp/ccVdVJKt.o: in function `main':
grader.cpp:(.text.startup+0x28): undefined reference to `best_path(int, int, int (*) [2], int*)'
collect2: error: ld returned 1 exit status