Submission #1267158

#TimeUsernameProblemLanguageResultExecution timeMemory
1267158lambiguinhoDreaming (IOI13_dreaming)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; pair<int,int> dfs(int a, int ant, int d, vector<vector<pair<int,int>>>& v, vector<pair<int,int>>& pais, vector<bool>& vis) { pair<int,int> resp = {d,a}; pais[a] = {d,ant}; vis[a] = 1; for (auto [c,b] : v[a]) { if (b != ant) { resp = max(resp,dfs(b,a,d+c,v,pais,vis)); } } return resp; } pair<int,int> centro(int a, int b, int d, vector<pair<int,int>>& pais) { int val = d; while (pais[a].first > d/2) { val = pais[a].first; a = pais[a].second; } return {d,min(val,d - pais[a].first)}; } int travelTime(int n, int m, int l, int inp1[], int inp2[], int inpval[]) { vector<vector<pair<int,int>>> v(n); vector<pair<int,int>> pais(n,{0,-1}); vector<bool> vis(n,0); for (int i = 0; i < m; i++) { int a = inp1[i], b = inp2[i], c = inpval[i]; v[a].push_back({c,b}); v[b].push_back({c,a}); } vector<pair<int,int>> diam; int resp = 0, len = 0; for (int i = 0; i < n; i++) { if (!vis[i]) { len++; auto [_,a] = dfs(i,-1,0,v,pais,vis); auto [d,b] = dfs(a,-1,0,v,pais,vis); diam.push_back(centro(b,a,d,pais)); resp = max(resp,diam[len-1].first); } } sort(diam.begin(),diam.end()); if (len > 2) { resp = max(resp,diam[len-2].second + diam[len-3].second + 2*l); } if (len > 1) { resp = max(resp, diam[len-1].second + diam[len-2].second + l); } return resp; } int main() { int n,m,l; cin >> n >> m >> l; int inp1[m], inp2[m], inpval[m]; for (int i = 0; i < m; i++) { int a,b,c; cin >> a >> b >> c; inp1[i] = a; inp2[i] = b; inpval[i] = c; } cout << travelTime(n,m,l,inp1,inp2,inpval); return 0; }

Compilation message (stderr)

/usr/bin/ld: /tmp/ccKkLRcj.o: in function `main':
grader.c:(.text.startup+0x0): multiple definition of `main'; /tmp/ccrkc0nN.o:dreaming.cpp:(.text.startup+0x0): first defined here
/usr/bin/ld: /tmp/ccKkLRcj.o: in function `main':
grader.c:(.text.startup+0xc4): undefined reference to `travelTime'
collect2: error: ld returned 1 exit status