#include <bits/stdc++.h>
using namespace std;
#include "game.h"
vector<set<int>> S;
int t = 0;
void initialize(int n){
S.assign(n,set<int>());
for (int i(0);i < n;++i) for (int k(0);k < n;++k) if (i!=k) S[i].emplace(k);
}
int hasEdge(int a,int b){
int ret = (S[a].size()==1||S[b].size()==1); t += ret; assert(t<(int)S.size());
if (S[a].find(b)!=S[a].end()) S[a].erase(b);
if (S[b].find(a)!=S[b].end()) S[b].erase(a);
while (S[a].size()==1) S[*S[a].begin()].erase(a),a = *S[a].begin();
while (S[b].size()==1) S[*S[b].begin()].erase(b),b = *S[b].begin();
return ret;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |