Submission #1240443

#TimeUsernameProblemLanguageResultExecution timeMemory
1240443Muhammad_Aneeq기지국 (IOI20_stations)C++20
0 / 100
306 ms560 KiB
#include "stations.h" #include <vector> #include <iostream> using namespace std; int const N=1e3+10; vector<int>nei[N]={}; vector<int>ret; int tm=0; void dfs(int u,int p=-1,int dp=0) { if (!dp) ret[u]=tm++; for (auto i:nei[u]) { if (i==p) continue; dfs(i,u,1-dp); } if (dp) ret[u]=tm++; } vector<int> label(int n, int k, vector<int> u, vector<int> v) { tm=0; for (int i=0;i<n;i++) nei[i]={}; ret={}; for (int i=0;i+1<n;i++) { nei[u[i]].push_back(v[i]); nei[v[i]].push_back(u[i]); } ret.resize(n); dfs(0); return ret; } int find_next_station(int s, int t, vector<int> c) { if (c.size()==1) return c[0]; if (s>c.back())// its ending time { if (t>s||t<c[1]) return c[0]; int ans=c[0]; for (int j=1;j<c.size();j++) { if (t>=c[j]) ans=c[j]; } return ans; } if (t<s) return c.back(); //starting time int ans=0; for (int j=c.size()-1;j>=0;j--) { if (t<=c[j]) ans=c[j]; } 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...