#include "Encoder.h"
#include <bits/stdc++.h>
using namespace std;
#define pb push_back
void Encode(int N, int A[], int B[])
{
vector<long long> tin(N), tout(N);
vector<vector<int>> g(N);
for (int i = 0; i < N - 1; i++) {
g[A[i]].pb(B[i]);
g[B[i]].pb(A[i]);
}
long long tim =0;
auto dfs = [&](int v, int p, auto &&self) -> void {
tin[v] = tim++;
for (auto &u : g[v]) {
if (u != p) self(u, v, self);
}
tout[v] = tim - 1;
};
dfs(0, 0, dfs);
for (int i = 0; i < N; i++) {
Code(i, tin[i] * 1ll * 250010 + tout[i]);
}
}
#include "Device.h"
void InitDevice()
{
}
int Answer(long long S, long long T)
{
long long tin1 = S / 250010, tout1 = S % 250010, tin2 = T / 250010, tout2 = T % 250010;
if (tin1 <= tin2 && tout2 <= tout1) {
return 1;
}
if (tin2 <= tin1 && tout1 <= tout2) return 0;
return 2;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |