Submission #1284853

#TimeUsernameProblemLanguageResultExecution timeMemory
1284853DeltaStruct게임 (IOI14_game)C++20
15 / 100
4 ms900 KiB
#include <bits/stdc++.h> using namespace std; #include "game.h" vector<set<int>> S; 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); 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()].find(a)!=S[*S[a].begin()].end()){ S[*S[a].begin()].erase(a),a = *S[a].begin(); } while (S[b].size()==1&&S[*S[b].begin()].find(b)!=S[*S[b].begin()].end()){ S[*S[b].begin()].erase(b),b = *S[b].begin(); } return ret; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...