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 "speedrun.h"
#include <vector>
#include <algorithm>
using namespace std;
using vi = vector<int>;
using vvi = vector<vi>;
const int maxN = 1'000;
void assignHints(int subtask, int N, int A[], int B[])
{
setHintLen(N);
vvi edg(1+N, vi(1+N, 0));
for(int e = 1; e <= N-1; e++)
edg[A[e]][B[e]] = edg[B[e]][A[e]] = 1;
for(int u = 1; u <= N; u++)
for(int v = 1; v <= N; v++)
setHint(u, v, edg[u][v]);
}
int N;
vi visit(1+maxN, 0);
void dfs(int u)
{
visit[u] = 1;
for(int v = 1; v <= N; v++)
{
if(visit[v]) continue;
if(getHint(v))
{
goTo(v);
dfs(v);
goTo(u);
}
}
}
void speedrun(int subtask, int N_, int start)
{
N = N_;
dfs(start);
}
# | 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... |