Submission #849203

#TimeUsernameProblemLanguageResultExecution timeMemory
849203abcvuitunggioGame (IOI14_game)C++17
0 / 100
1 ms348 KiB
#include "game.h" #include <bits/stdc++.h> using namespace std; int p[1501],sz[1501],cnt[1501]; int f(int u){ return (p[u]==u?u:p[u]=f(p[u])); } bool unite(int u, int v){ u=f(u); v=f(v); if (u==v) cnt[u]++; else{ if (sz[u]>sz[v]) swap(u,v); p[v]=u; sz[u]+=sz[v]; cnt[u]+=cnt[v]+1; } return (cnt[u]*2==sz[u]*(sz[u]-1)); } void initialize(int n) { iota(p,p+n,0); fill(sz,sz+n,1); } int hasEdge(int u, int v) { return unite(u,v); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...