Submission #1223622

#TimeUsernameProblemLanguageResultExecution timeMemory
1223622LudisseyStations (IOI20_stations)C++20
0 / 100
3056 ms2162688 KiB
#include "stations.h" #include <vector> #include <bits/stdc++.h> using namespace std; #define sz(a) (int)a.size() #define all(a) (a.begin(), a.end()) vector<vector<int>> neigh; vector<int> labels; int tim=0; void dfs(int x,int p){ labels[x]=1000*tim; for (auto u : neigh[x]) { if(u==p) continue; dfs(u,x); } labels[x]+=tim++; } std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) { labels.resize(n); neigh.resize(n); for (int i = 0; i < n-1; i++) { neigh[u[i]].push_back(v[i]); neigh[v[i]].push_back(u[i]); } dfs(0,-1); return labels; } int find_next_station(int s, int t, std::vector<int> c) { t%=1000; int p=-1; for (int i=0; i< sz(c); i++) { int u=c[i]; if(u%1000>s%1000) p=u; else if(t>=u/1000&&t<=u%1000) return u; } return p; }
#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...