# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1148698 | PagodePaiva | Stations (IOI20_stations) | C++20 | 303 ms | 520 KiB |
#include "stations.h"
#include<bits/stdc++.h>
using namespace std;
const int N = 1010;
vector <int> g[N];
int ans[N];
int tmm;
void dfs(int v, int p){
ans[v] = tmm;
tmm++;
for(auto x : g[v]){
if(x == p) continue;
dfs(x, v);
}
}
std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) {
for(int i = 0;i < n;i++){
g[i].clear();
ans[i] = 0;
}
tmm = 0;
for(int i = 0;i < n-1;i++){
g[u[i]].push_back(v[i]);
g[v[i]].push_back(u[i]);
}
int st = 0;
for(int i = 0;i < n;i++){
if(g[i].size() == 1) st = i;
}
dfs(st, st);
vector <int> res;
for(int i = 0;i < n;i++){
res.push_back(ans[i]);
}
return res;
}
int find_next_station(int s, int t, std::vector<int> c) {
if(s < t){
for(auto x : c){
if(x > s) return x;
}
}
else{
for(auto x : c){
if(x < s) return x;
}
}
}
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... |