Submission #1202543

#TimeUsernameProblemLanguageResultExecution timeMemory
1202543trashaccountGame (APIO22_game)C++20
0 / 100
1 ms1120 KiB
#include "game.h" #include <bits/stdc++.h> using namespace std; const int NM = 3e4, KM = 1000; int n, k; vector <int> adj[NM+5]; bool chk[NM+5][KM+5]; bool solved; void init(int _n, int _k){ n = _n, k = _k; for (int i = 0; i < n; i++) adj[i].clear(); for (int i = 0; i+1 < k; i++) adj[i].push_back(i+1); for (int i = 0; i < n; i++) for (int j = 0; j < k; j++) chk[i][j] = 0; for (int i = 0; i < k; i++) for (int j = 0; j < i; j++) chk[i][j] = 1; solved = 0; } void dfs(int u, int t){ chk[u][t] = 1; if (u < k && t == u) solved = 1; for (int v : adj[u]){ if (!chk[v][t]) dfs(v, t); } } int add_teleporter(int u, int v){ adj[u].push_back(v); if (u == v && u < k){ solved = 1; return 1; } for (int t = 0; t < k; t++){ if (!chk[u][t]) continue; if (!chk[v][t]) dfs(v, t); } return solved; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...