# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
838628 | finn__ | Game (APIO22_game) | C++17 | 523 ms | 7128 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#include "game.h"
using namespace std;
constexpr size_t N = 30000, K = 1000;
size_t n, k;
bitset<N> reachable[K];
vector<size_t> edges[N];
void init(int n_, int k_)
{
n = n_, k = k_;
for (size_t i = 0; i < k; ++i)
for (size_t j = i + 1; j < k; ++j)
reachable[i][j] = 1;
}
bool add_new_reachable(size_t i, size_t u)
{
if (u <= i)
return 1;
reachable[i][u] = 1;
for (size_t v : edges[u])
if (!reachable[i][v] && add_new_reachable(i, v))
return 1;
return 0;
}
int add_teleporter(int u, int v)
{
for (size_t i = 0; i < k; ++i)
if ((reachable[i][u] || u == i) && add_new_reachable(i, v))
return 1;
edges[u].push_back(v);
return 0;
}
Compilation message (stderr)
# | 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... |