Submission #282351

#TimeUsernameProblemLanguageResultExecution timeMemory
282351iliccmarkoTraffic (IOI10_traffic)C++14
0 / 100
83 ms55416 KiB
#include <bits/stdc++.h> #include<traffic.h> using namespace std; #define ll long long #define endl "\n" using namespace std; long long dfs(int u, int pret, vector<vector<int> > g, long long &ans, int &ind, long long svi, int p[]) { long long br = 0; for(int i = 0;i<(int)g[u].size();i++) { int s = g[u][i]; if(s==pret) continue; br+=dfs(s, u, g, ans, ind, svi, p); } long long maks = max(br, svi - p[u] - br); if(maks<ans) { ans = maks; ind = u; } return br + p[u]; } int LocateCentre(int n, int p[], int s[], int d[]) { vector<vector<int> > g(1000); for(int i = 0;i<n-1;i++) { int a = s[i]; int b = d[i]; g[a].push_back(b); g[b].push_back(a); } long long svi = 0; for(int i = 0;i<n;i++) { svi+=p[i]; } long long ans = LLONG_MAX; int ind; dfs(1, -1, g, ans, ind, svi, p); return ind; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...