#include "game.h"
#include <bits/stdc++.h>
using namespace std;
const int NM = 3e4, KM = 1000;
int n, k;
vector <int> adj[NM+5];
bitset <KM+5> bs[NM+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++){
bs[i] = 0;
}
for (int i = 0; i < k; i++)
for (int j = 0; j < i; j++)
bs[i][j] = 1;
solved = 0;
}
void dfs(int u){
if (u < k && bs[u][u] == 1) solved = 1;
for (int v : adj[u]){
if ((bs[u] | bs[v]) == bs[v]) continue;
bs[v] |= bs[u];
dfs(v);
}
}
int add_teleporter(int u, int v){
adj[u].push_back(v);
if (u == v && u < k) solved = 1;
bs[v] |= bs[u];
dfs(v);
return solved;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |