//#include "stations.h"
#include <vector>
#include<bits/stdc++.h>
#define pb push_back
using namespace std;
const int N=1e3+5;
vector<int>labels;vector<vector<int>>adj;
int cnt=0;
void dfs(int node,int par,int col){
if(col==1)labels[node]=cnt++;
for(auto it:adj[node])if(it!=par)dfs(it,node,col^1);
if(col==0)labels[node]=cnt++;
}
std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) {
labels.resize(n);
adj.assign(n,{});
cnt=0;
for(int i=0;i<n-1;i++){
adj[u[i]].pb(v[i]);
adj[v[i]].pb(u[i]);
}
dfs(0,-1,0);
return labels;
}
int find_next_station(int s, int t, std::vector<int> c) {
if(c[0]>s){
if(t>s)return c.back();
for(auto it:c)if(it>=t)return it;
}
else {
if(t<s)return c[0];
int idx=s;
for(int i=c.size()-1;i>=0;i--){
if(c[i]<=t)return c[i];
}
}
return s;
}
| # | 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... |