Submission #851802

#TimeUsernameProblemLanguageResultExecution timeMemory
851802ntkphongGame (IOI14_game)C++14
0 / 100
0 ms444 KiB
#include "game.h" #include <bits/stdc++.h> using namespace std; vector<int> par; vector<vector<int>> cnt; int nn; int get_root(int u) { return u = par[u] ? u : par[u] = get_root(par[u]); } void initialize(int n) { par.resize(n); for(int i = 0; i < n; i ++) par[i] = i; cnt.resize(n, vector<int> (n, 1)); nn = n; } int hasEdge(int u, int v) { u = par[u]; v = par[v]; if(u != v) { if(u > v) swap(u, v); cnt[u][v] -- ; if(!cnt[u][v]) { for(int i = v + 1; i < nn; i ++) cnt[u][i] += cnt[v][i]; par[v] = u; return 1; } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...