Submission #1298046

#TimeUsernameProblemLanguageResultExecution timeMemory
1298046lukaye_19Stations (IOI20_stations)C++20
0 / 100
391 ms472 KiB
#include "stations.h" #include <vector> #include <algorithm> using namespace std; int t = 1; void DFS(int node,int parent, int odd, vector<vector<int>>& adj, vector<int>& labels) { if (odd) labels[node - 1] = t++; for (int nenode : adj[node]) { if (nenode != parent) { DFS(nenode,node,1 - odd,adj,labels); } } if (!odd) labels[node - 1] = t++; } vector<int> label(int n, int k, vector<int> u, vector<int> v) { vector<int>labels(n); vector<vector<int>>adj(n + 1); for (int i = 0; i < n - 1; i++) { int u1 = u[i]; int v1 = v[i]; adj[u1].push_back(v1); adj[v1].push_back(u1); } t = 1; DFS(1,0,1,adj,labels); return labels; } int find_next_station(int s,int t,vector<int> c) { int next = -1; sort(c.begin(), c.end()); for (int st : c) { if (st <= t) next = st; } if (next == -1) next = c[0]; return next; }
#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...