Submission #819837

#TimeUsernameProblemLanguageResultExecution timeMemory
819837OAleksaRace (IOI11_race)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> //#include "factories.h" //#include "wall.h" #include "race.h" #define f first #define s second using namespace std; #define int long long const int maxn = 2e5 + 69; vector<pair<int, int>> g[maxn]; map<int, int> m[maxn]; vector<int> dep(maxn), sum(maxn); int ans = 1e9; void dfs(int v,int p) { for(auto u : g[v]) { if(u.f != p) { dep[u.f] = dep[v] + 1; sum[u.f] = sum[v] + u.s; dfs(u.f, v); } } } void dfs2(int v, int p, int t) { m[v][sum[v]] = dep[v]; for(auto u : g[v]) { if(u.f != p) { dfs2(u.f, v, t); if(m[u.f].size() > m[v].size()) swap(m[u.f], m[v]); for(auto it : m[u.f]) { int trazim = t + 2 * sum[v] - sum[it.f]; if(m[v].count(trazim)) ans = min(ans, it.s + m[v][trazim]); } for(auto it : m[u.f]) { if(m[v].count(it.f)) m[v][it.f] = min(m[v][it.f], it.s); else m[v][it.f] = it.s; } } } } int best_path(int N, int K, int H[][2], int L[]) { for(int i = 0;i < N - 1;i++) { g[H[i][1]].push_back({H[i][0], L[i]}); g[H[i][0]].push_back({H[i][1], L[i]}); } dfs(0, -1); dfs2(0, -1, K); if(ans == 1e9) ans = -1; return ans; } // signed main() // { // ios_base::sync_with_stdio(false); // cin.tie(0); // cout.tie(0); // int tt = 1; // //cin >> tt; // while(tt--) { // int n, k; // cin >> n >> k; // int h[n - 1][2], l[n - 1]; // for(int i = 0;i < n - 1;i++) // cin >> h[i][0] >> h[i][1] >> l[i]; // cout << best_path(n, k, h, l); // } // return 0; // }

Compilation message (stderr)

/usr/bin/ld: /tmp/cc0uwLTA.o: in function `main':
grader.cpp:(.text.startup+0x28): undefined reference to `best_path(int, int, int (*) [2], int*)'
collect2: error: ld returned 1 exit status