Submission #1257929

#TimeUsernameProblemLanguageResultExecution timeMemory
1257929NurislamStations (IOI20_stations)C++20
0 / 100
306 ms600 KiB
#include "stations.h" #include <bits/stdc++.h> using namespace std; vector<int> label(int n, int k, vector<int> u,vector<int> v) { vector<vector<int>> g(n); for(int i = 0; i+1 < n; i ++ ) { g[u[i]].push_back(v[i]); g[v[i]].push_back(u[i]); }; int ct = 0; vector<int> l(n); function<void(int,int,int)> dfs = [&](int ps,int pr, int tp) { if(tp) l[ps] = ct ++ ; for(int to : g[ps] ) if(to != pr) dfs(to,ps,tp^1); if(!tp) l[ps] = ct ++ ; }; dfs(0,0,0); return l; }; int find_next_station(int s, int t, vector<int> g) { for(int i : g) if(t == i) return i; if(s < g[0]){ if(t < s)return g.back(); int ans = g.back(); for(int i : g) if(t <= i) ans = i; return ans; } if(t > s) return g[0]; reverse(g.begin(), g.end()); int ans = g.back(); for(int i : g) if(i <= t) ans = i; return ans; };
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...