Submission #513493

#TimeUsernameProblemLanguageResultExecution timeMemory
513493status_codingGame (IOI14_game)C++14
0 / 100
0 ms204 KiB
#include "game.h" #include <bits/stdc++.h> int par[2005]; int nr[2005]; int dsu_par(int x) { if(par[x]!=x) par[x]=dsu_par(par[x]); return par[x]; } void dsu_merge(int x, int y) { par[y]=x; nr[x]+=nr[y]-2; } void initialize(int n) { for(int i=1;i<=n;i++) { par[i]=i; nr[i]=n-1; } } int hasEdge(int x, int y) { x = dsu_par(x+1); y = dsu_par(y+1); if(x == y) return true; if(nr[x]==1 || nr[y]==1) { dsu_merge(x, y); return true; } return false; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...