# | 제출 시각UTC-0 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
501350 | Iwanttobreakfree | Traffic (IOI10_traffic) | C++17 | 419 ms | 182492 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <iostream>
#include <vector>
#include "traffic.h"
using namespace std;
typedef long long ll;
ll ans=1e18;
int node=-1;
ll dfs(int a,vector<vector<int> >& v,int par,int tot,vector<int>& w){
ll sol=0,parw=0;
for(int x:v[a]){
if(x!=par){
ll af=max(dfs(x,v,a,tot,w),sol);
sol=max(sol,af);
parw+=af;
}
}
ll fin=max(sol,tot-parw-w[a]);
if(fin<ans){
ans=fin;
node=a;
}
return parw+w[a];
}
int LocateCentre(int N, int pp[], int S[], int D[]) {
vector<vector<int> > v(N,vector<int>());
vector<int> w(N);
ll tot=0;
for(int i=0;i<N;i++)w[i]=pp[i];
for(int i=0;i<N-1;i++){
v[S[i]].push_back(D[i]);
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |