Submission #671959

#TimeUsernameProblemLanguageResultExecution timeMemory
671959sudheerays123Traffic (IOI10_traffic)C++17
0 / 100
1 ms348 KiB
#include "traffic.h"

#include<bits/stdc++.h>
using namespace std;
#define fast ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
#define ll int
const ll N = 1000+5 , INF = 3e9 , MOD = 1e9+7;

vector<ll> adj[N] , sub(N);

ll dfs(ll s , ll par , int p[]){

	ll ans = -INF;

	for(auto u : adj[s]){
		if(u == par) continue;
		dfs(u,s,p);
		ans = max(ans,sub[u]+p[u]);
		sub[s] += sub[u]+p[u];
	}

	return ans;
}

int LocateCentre(int n, int p[], int S[], int D[]){

	for(ll i = 0; i < n-1; i++){
		adj[S[i]].push_back(D[i]);
		adj[D[i]].push_back(S[i]);
	}

	ll ans = INF , city;

	for(ll i = 0; i < n; i++){
		for(ll j = 0; j < n; j++) sub[j] = 0;
		ll x = dfs(i,0,p);
		if(x < ans){
			ans = x;
			city = i;
		}
	}

	return city;
}

Compilation message (stderr)

traffic.cpp:7:29: warning: overflow in conversion from 'double' to 'int' changes value from '3.0e+9' to '2147483647' [-Woverflow]
    7 | const ll N = 1000+5 , INF = 3e9 , MOD = 1e9+7;
      |                             ^~~
traffic.cpp: In function 'int LocateCentre(int, int*, int*, int*)':
traffic.cpp:43:9: warning: 'city' may be used uninitialized in this function [-Wmaybe-uninitialized]
   43 |  return city;
      |         ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...