#include "game.h"
#include <bits/stdc++.h>
using namespace std;
const int nax = 3005;
const int kax = 1005;
int reach[kax][nax], N, K;
vector<int> G[nax];
bool ok = false;
void dfs(int tp, int u) {
if (reach[tp][u]) return;
reach[tp][u] = true;
if (u <= tp) ok = true;
for (auto & v : G[u]) {
if (!reach[tp][v]) {
dfs(tp, v);
}
}
}
void init(int n, int k) {
N = n; K = k;
for (int i = 1; i <= k - 1; i++) G[i].push_back(i + 1);
for (int i = 1; i <= k - 1; i++) dfs(i, i + 1);
}
int add_teleporter(int u, int v) {
u++; v++;
G[u].push_back(v);
for (int i = 1; i <= K; i++) {
if (reach[i][u] && !reach[i][v]) {
dfs(i, v);
}
}
return ok;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
Wrong Answer[1] |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
Wrong Answer[1] |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
Wrong Answer[1] |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
Wrong Answer[1] |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
Wrong Answer[1] |
2 |
Halted |
0 ms |
0 KB |
- |