Submission #1207294

#TimeUsernameProblemLanguageResultExecution timeMemory
1207294chambiTraffic (IOI10_traffic)C++20
Compilation error
0 ms0 KiB
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
const int maximo= 1000005;
vector<int>conexiones[maximo];
vector<int>fanaticos;
vector<long long>s_fanaticos;
int N;
long long t_fanaticos=0;
int mejor_ciudad=-1;
void calcular(int ciudad, int padre){
    suma_fanaticos[ciudad]=fanaticos[ciudad];
    for(int vecino:conexiones[ciudad]){
        if(vecino==padre){
            continue;
        }
        calcular(vecino, ciudad);
        s_fanaticos[ciudad]+=s_fanaticos[vecino];
    }
}
void centro(int ciudad, int padre){
    bool es_centro=true;
    for(int vecino:conexiones[ciudad]){
        if(vecino==padre){
            continue;
        }
        if(s_fanaticos[vecino]>t_fanaticos/2){
            es_centro=false;
            centro(vecino, ciudad);
            return;
        }
        long long fuera= t_fanaticos-s_fanaticos[ciudad];
        if(fuera>t_fanaticos/2){
            es_centro=false;
            centro(vecino, ciudad);
            return;
        }
        if(centro){
            mejor_ciudad=ciudad;
        }
    }
}
int LocateCenter(int n, vector<int>&P, vector<int>&S, vector<int>&D){
    N=n;
    fanaticos=P;
    s_fanaticos.assign(N, 0);
    t_fanaticos=0;
    mejor_ciudad=-1;
    for(int i=0; i<N-1; i++){
        conexiones[S[i]].push_back(D[i]);
        conexiones[D[i]].push_back(S[i]);
    }
    for(int f:P){
        t_fanaticos+=f;
    }
    calcular(0, -1);
    centro(0, -1);
    return mejor_ciudad;
}

Compilation message (stderr)

traffic.cpp: In function 'void calcular(int, int)':
traffic.cpp:13:5: error: 'suma_fanaticos' was not declared in this scope; did you mean 's_fanaticos'?
   13 |     suma_fanaticos[ciudad]=fanaticos[ciudad];
      |     ^~~~~~~~~~~~~~
      |     s_fanaticos