제출 #1223649

#제출 시각아이디문제언어결과실행 시간메모리
1223649LudisseyStations (IOI20_stations)C++20
0 / 100
308 ms564 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]=tim++; for (auto u : neigh[x]) { if(u==p) continue; dfs(u,x); } } std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) { labels.clear(); neigh.clear(); labels.resize(n); neigh.resize(n); tim=0; for (int i = 0; i < n-1; i++) { neigh[u[i]].push_back(v[i]); neigh[v[i]].push_back(u[i]); } for (int i = 0; i < n; i++){ if(sz(neigh[i])==1) { dfs(i,-1); break; } } return labels; } int find_next_station(int s, int t, std::vector<int> c) { if(sz(c)==1) return c[1]; for (int i=0; i< sz(c); i++) { int u=c[i]; if(t>=s&&u>=s) return u; if(t<=s&&u<=s) return u; } return c[0]; }
#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...