Submission #370900

# Submission time Handle Problem Language Result Execution time Memory
370900 2021-02-25T02:29:43 Z XEMPLI5 Traffic (IOI10_traffic) C++17
0 / 100
31 ms 39532 KB
#include "traffic.h"
#include <bits/stdc++.h>

using namespace std;

int fans, mxN = 1e6;
vector<vector<int>> g(mxN);
vector<int> citySize(mxN), subTreeSize(mxN), maxTraffic(mxN), people(mxN);

void dfs(int cur, int par){
	for(auto e: g[cur]) {
		if(e == par) return;
		dfs(e,par);
		subTreeSize[cur] += subTreeSize[e];
		people[cur] = max(people[cur], subTreeSize[e]);
	}
	people[cur] = max(people[cur], fans - subTreeSize[cur] - citySize[cur]);
	subTreeSize[cur] += citySize[cur];
}

	

int LocateCentre(int n, int p[], int s[], int d[]){
	for(int i=0; i<n; i++){
		g[s[i]].push_back(d[i]);
		g[d[i]].push_back(s[i]);
	}
	for(int i=0; i<n; i++) {
		fans += p[i];
		citySize[i] = p[i];
	}
	dfs(0,0);
	int ans = 0, minPeople = 1e9;
	for(int i=0; i<n; i++){
		if(people[i] < minPeople) {
			minPeople = people[i];
			ans = i;
		}
	}
	return ans;
}
	
	
	
	
	
	
	
# Verdict Execution time Memory Grader output
1 Incorrect 31 ms 39532 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 31 ms 39532 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 31 ms 39532 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 31 ms 39532 KB Output isn't correct
2 Halted 0 ms 0 KB -