제출 #1365656

#제출 시각아이디문제언어결과실행 시간메모리
1365656hamza_albrahim경주 (Race) (IOI11_race)C++20
컴파일 에러
0 ms0 KiB
#include "bits/stc++.h"
using namespace std;

const int mxn = 200001;

vector<pair<int, int>> adj[mxn];

map<int, int> m[mxn];
dis[mxn];
dep[mxn];
int ans = -1;
int K;

void check(int v, int di, int de){
    int tar = K - di + (2 * dist[v]);
    if(m[v][target] != 0){
        ans = min(ans, m[v][target] + de - (2 * dep[v]));
    }
}

void add(int v, int di, int de){
    if(m[v][di] == 0){
        m[v][di] = de;
    }
    else{
        if(de < m[v][di]){
            m[v][di] = de;
        }
    }
}

void dfs(int v, int p){
    dep[v] = dep[p] + 1;
    int ind = -1;
    for(auto [i, j] : adj[v]){
        if(i != p){
            dist[i] += j;
            dfs(i, v);
            if(ind != -1 || m[i].size() > m[ind].size()){
                ind = i;
            }
        }
    }
    if(m != -1){
        swap(m[ind], m[v]);
    }
    add(v, dis[v], dep[v]);
    for(auto [i, j] : adj[v]){
        if(i != p && i != m){
            for(auto [a, b] : m[i]){
                check(v, a, b);
            }
        }
    }
    for(auto [i, j] : adj[v]){
        if(i != p && i != m){
            for(auto [a, b] : m[i]){
                add(v, a, b);
            }
        }
    }
}

void

int best_path(int n, int k, int h[][2], int l[])
{
    K = k;
    for(int i = 1; i < n; i++){
        adj[h[i][0]].push_back({h[i][1], l[i]});
        adj[h[i][1]].push_back({h[i][0], l[i]});
    }
    dfs(1, 0);
    cout<<ans;

}

컴파일 시 표준 에러 (stderr) 메시지

race.cpp:1:10: fatal error: bits/stc++.h: No such file or directory
    1 | #include "bits/stc++.h"
      |          ^~~~~~~~~~~~~~
compilation terminated.