Submission #581318

#TimeUsernameProblemLanguageResultExecution timeMemory
581318JosiaGame (IOI14_game)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; #define int int64_t int N; struct chefNode { int chef; set<pair<int, int>> connections; }; vector<chefNode> chefs; void initUnionfind(int n) { chefs.clear(); chefs.resize(n); for (int i = 0; i<n; i++) { chefNode x; x.chef = i; for (int j = 0; j<n; j++) { if (i == j) continue; x.connections.insert({i, j}); } chefs[i] = x; } } int find(int x) { if (chefs[x].chef == x) return x; return chefs[x].chef = find(chefs[x].chef); } void unite(int a, int b) { a = find(a); b = find(b); if (a == b) return; chefs[a].chef = b; for (auto i: chefs[a].connections) chefs[b].connections.insert(i); chefs[a].connections.clear(); set<pair<int, int>> newConnections; for (auto i: chefs[b].connections) if (find(i.first) != find(i.second)) newConnections.insert(i); chefs[b].connections = newConnections; } void initialize(int n) { N = n; initUnionfind(n); } int hasEdge(int u, int v) { u = find(u); v = find(v); if (u == v) return 0; // return rand()%2; if (chefs[u].connections.size() == 1 || chefs[v].connections.size() == 1) { unite(u, v); return 1; } return 0; }

Compilation message (stderr)

/usr/bin/ld: /tmp/ccdzzihR.o: in function `main':
grader.cpp:(.text.startup+0x2a): undefined reference to `initialize(int)'
/usr/bin/ld: grader.cpp:(.text.startup+0x94): undefined reference to `hasEdge(int, int)'
collect2: error: ld returned 1 exit status