# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
315682 | Sorting | Stations (IOI20_stations) | C++17 | 1234 ms | 1280 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 "stations.h"
#include <bits/stdc++.h>
using namespace std;
const int N = 1000 + 3;
vector<int> adj[N];
int dfs(int u, int p, int idx, vector<int> &labels){
for(int to: adj[u]){
if(to == p) continue;
idx = dfs(to, u, idx, labels);
}
labels[u] = idx++;
return idx;
}
vector<int> label(int n, int k, vector<int> u, vector<int> v){
for(int i = 0; i < n; ++i)
adj[i].clear();
for(int i = 0; i < n - 1; ++i){
adj[u[i]].push_back(v[i]);
adj[v[i]].push_back(u[i]);
}
vector<int> labels(n);
dfs(0, -1, 0, labels);
return labels;
}
int find_next_station(int s, int t, vector<int> c){
for(int i = 0; i < c.size(); ++i)
if(c[i] >= t)
return c[i];
assert(false);
return -1;
}
/*
2
5 10
0 1
0 2
1 3
1 4
1
0 4 0
2 1
0 1
1
1 0 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... |