Submission #306600

#TimeUsernameProblemLanguageResultExecution timeMemory
306600chubyxdxdStations (IOI20_stations)C++14
0 / 100
982 ms768 KiB
#include "stations.h"
#include <bits/stdc++.h>
#include <vector>
using namespace std;
vector<vector<int>> G;
vector<int> gg;
void dfs(int node,int pad){
  gg.push_back(node);
  for(auto i:G[node]){
    if(i==pad)continue;
    dfs(i,node);
  }
}
vector<int> label(int n, int k,vector<int> u,vector<int> v) {
  G.clear();
  G.assign(n+1,vector<int>());
  for(int i=0;i<n-1;i++){
    G[u[i]].push_back(v[i]);
    G[v[i]].push_back(u[i]);
  }
  int piv=0;
  for(int i=0;i<n;i++){
    if(G[i].size()==1){
      piv=i;
      break;
    }
  }
  dfs(piv,piv);
  vector<int> labels(n);
  for(int i=0;i<n;i++){
    labels[gg[i]]=i;
  }
  return labels;
}
 
int find_next_station(int s, int t, std::vector<int> c) {
  if(t<s)return s-1;
  else return s+1;
}
#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...