Submission #791864

#TimeUsernameProblemLanguageResultExecution timeMemory
791864caganyanmazGame (IOI14_game)C++14
15 / 100
2 ms364 KiB
#include <bits/stdc++.h> #include "game.h" using namespace std; constexpr static int MXSIZE = 1500; int ans[MXSIZE][MXSIZE]; bitset<MXSIZE> g[MXSIZE]; bitset<MXSIZE> erased_before; int nc[MXSIZE]; int n; void initialize(int nn) { n = nn; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) if (i != j) g[i][j] = 1; } void check_erase(int i) { if (g[i].count() <= 1 && !erased_before[i]) { erased_before[i] = true; for (int j = 0; j < n; j++) { g[j][i] = 0; check_erase(j); } } } int hasEdge(int u, int v) { if (g[u].count() <= 1 || g[v].count() <= 1) return 1; g[u][v] = 0; g[v][u] = 0; check_erase(u); check_erase(v); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...