Submission #429018

#TimeUsernameProblemLanguageResultExecution timeMemory
429018MeGustaElArroz23Game (IOI14_game)C++14
100 / 100
453 ms16768 KiB
#include<bits/stdc++.h> #include "game.h" using namespace std; typedef vector<int> vi; typedef vector<bool> vb; typedef vector<vb> vvb; vi ind(1500); int comp; int find(int ac){ if (ind[ac]==ac) return ac; return find(ind[ac]); } void unite(int a, int b){ if (find(a)==find(b)) return; comp--; ind[find(a)]=b; } vvb preguntas; set<int> com={0}; void initialize(int n) { preguntas=vvb(n,vb(n,0)); } int hasEdge(int u, int v) { preguntas[u][v]=true; preguntas[v][u]=true; if (com.count(u)==com.count(v)) return 0; else{ if (com.count(u)) swap(u,v); for (int x:com){ if (not preguntas[u][x]) return 0; } com.insert(u); return 1; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...