Submission #463557

#TimeUsernameProblemLanguageResultExecution timeMemory
463557KhizriTraffic (IOI10_traffic)C++17
25 / 100
5041 ms28996 KiB
#include "traffic.h" #include <bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define F first #define S second #define INF 1e18 #define all(v) (v).begin(),(v).end() #define rall(v) (v).rbegin(),(v).rend() #define pii pair<int,int> #define pll pair<ll,ll> #define OK cout<<"Ok"<<endl; #define MOD (ll)(1e9+7) #define endl "\n" const int mxn=1e6+5; int a[mxn],b[mxn],ans=0; vector<int>vt[mxn]; void dfs(int u,int sum,int p,int arr[]){ ans=max(ans,sum); for(int v:vt[u]){ if(v!=p){ dfs(v,sum+arr[v],u,arr); } } } int LocateCentre(int n, int arr[], int S[], int D[]) { //bool q=true; for(int i=0;i<n-1;i++){ vt[S[i]].pb(D[i]); vt[D[i]].pb(S[i]); } ll maxs=2e9,kk=0; for(int i=0;i<n;i++){ ans=0; dfs(i,0,-1,arr); if(ans<maxs){ maxs=ans; kk=i; } } return kk; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...