Submission #1143499

#TimeUsernameProblemLanguageResultExecution timeMemory
1143499BlockOGGame (IOI14_game)C++20
15 / 100
1093 ms328 KiB
// mrrrow mnyaa ;3c // go play vivid/stasis! it's a really awesome free game on steam int links[6][6][2]; bool used[6]; int n; void initialize(int N) { n = N; for (int i = 1; i <= n; i++) { links[i][0][1] = 1; for (int j = 0; j < n; j++) { links[i][j + 1][0] = j; links[i][j + 1][1] = j + 2; } links[i][n + 1][1] = -1; } } int dfs(int i) { if (used[i]) return 0; int v = 1; used[i] = true; for (int it = links[i][0][1]; links[i][it][1] != -1; it = links[i][it][1]) v += dfs(it); return v; } int hasEdge(int u, int v) { u++, v++; int up = links[u][v][0], un = links[u][v][1]; int vp = links[v][u][0], vn = links[v][u][1]; links[u][up][1] = un; links[u][un][0] = up; links[v][vp][1] = vn; links[v][vn][0] = vp; for (int i = 1; i <= n; i++) used[i] = false; if (dfs(u) != n) { links[u][up][1] = v; links[u][un][0] = v; links[v][vp][1] = u; links[v][vn][0] = u; return true; } else return false; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...