Submission #308667

#TimeUsernameProblemLanguageResultExecution timeMemory
308667kris01기지국 (IOI20_stations)C++14
0 / 100
870 ms1096 KiB
#include "stations.h" #include <bits/stdc++.h> #include <vector> int timer = 0; using namespace std; vector < vector <int> > Adj; vector <int> tin,tout,depth; void PREP(int n) { Adj.clear(); tin.clear(); tout.clear(); depth.clear(); Adj.resize(n); tin.resize(n); tout.resize(n); depth.resize(n); depth[1] = 0; timer = 1; } void DFS(int v,int p) { tin[v] = timer; timer++; for (int x : Adj[v]) { if (x == p) continue; DFS(x,v); depth[x] = depth[v] + 1; } tout[v] = timer; timer++; } std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) { vector <int> labels(n); PREP(n); for (int i = 0;i < n-1;i++) { int a = u[i]; int b = v[i]; Adj[a].push_back(b); Adj[b].push_back(a); } DFS(1,-1); for (int i = 0;i < n;i++) { if (depth[i] % 2 == 0) { labels[i] = tin[i]; } else { labels[i] = tout[i]; } } return labels; } int find_next_station(int s, int t, std::vector<int> c) { if (c.back() < s) { c.push_back(s); sort(c.begin(),c.end()); for (int i = 1;i < c.size()-1;i++) { if (c[i] <= t && c[i+1] > t) { return c[i]; } } return c[0]; } else { c.push_back(s); sort(c.begin(),c.end()); for (int i = 0;i < c.size()-1;i++) { if (c[i] >= t && c[i+1] < t) { return c[i]; } } return c.back(); } }

Compilation message (stderr)

stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:59:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   59 |       for (int i = 1;i < c.size()-1;i++) {
      |                      ~~^~~~~~~~~~~~
stations.cpp:68:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   68 |       for (int i = 0;i < c.size()-1;i++) {
      |                      ~~^~~~~~~~~~~~
#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...