#include <bits/stdc++.h>
#include "stations.h"
using namespace std;
vector<int> w, a, out;
vector<vector<int>> g;
int timer = -1;
void dfs(int u, int p) {
timer++;
w[u] = 1;
a.push_back(u);
for (auto v : g[u]) {
if (v != p) {
dfs(v, u);
w[u] += w[v];
}
}
timer++;
out[u] = timer;
}
vector<int> label(int n, int k, vector<int> u, vector<int> v) {
a.clear();
g.assign(n, {});
w.assign(n, 0);
out.assign(n, 0);
for (int i = 0; i < n - 1; i++) {
g[u[i]].push_back(v[i]);
g[v[i]].push_back(u[i]);
}
dfs(0, -1);
return out;
}
int find_next_station(int s, int t, vector<int> c) {
if (s > t) {
for (auto x : c) {
if (x > t || x == t) {
return x;
}
}
}
return c.back();
}
| # | 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... |