# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
385697 | Ahmadsm2005 | Stations (IOI20_stations) | C++14 | 886 ms | 1004 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
#include "stations.h"
using namespace std;
int C;
vector<vector<int>>edges;
vector<int>labels;
void DFS(int v,int u=-1){
int INIT=C;
for(int i=0;i<edges[v].size();i++){
C+=10001;
if(edges[v][i]!=u)
DFS(edges[v][i],v);
C-=10001;
C++;
}
C=INIT;
labels[v]=C;
C+=1001;
}
vector<int>label(int n,int k,vector<int>u,vector<int>v){
labels.clear();
labels.resize(n);
edges.resize(n);
for(int i=0;i<u.size();i++){
edges[u[i]].push_back(v[i]),edges[v[i]].push_back(u[i]);
}
DFS(0);
C=0;
edges.clear();
return labels;
}
int find_next_station(int s, int t,vector<int>c){
if((s/10001)>(t/10001))
return c[0];
for(int i=c.size()-1;i>=0;i--){
if(c[i]%1001<=t%1001)
return c[i];
}
return c[0];
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |