Submission #1080249

#TimeUsernameProblemLanguageResultExecution timeMemory
1080249KaleemRazaSyedStations (IOI20_stations)C++17
5 / 100
693 ms1272 KiB
#include<bits/stdc++.h> #include "stations.h" using namespace std; const int N = 1000; vector<int> G[N]; int in[N], out[N]; int emit = 0; void add_edge(int x, int y) { G[x].push_back(y); G[y].push_back(x); } void dfs(int v, int p = -1) { in[v] = emit++; for(int u : G[v]) if(u != p) dfs(u, v); out[v] = emit; } vector<int> label(int n, int k, vector<int> u, vector<int> v) { emit = 0; for(int i = 0; i < n; i ++) G[i].clear(); for(int i = 0; i < u.size(); i ++) add_edge(u[i], v[i]); for(int i = 0; i < N; i ++) if(G[i].size() == 1) { dfs(i); break; } vector<int> l(n); for(int i = 0; i < n; i ++) { l[i] = in[i]; // * N + out[i] - 1; } return l; } int find_next_station(int s, int t, vector<int> c) { // int ins = s / N, outs = s % N + 1; // int in_t = t / N, outt = t % N + 1; if(s < t) return s + 1; return s - 1; /* int p = -1; for(int i : c) { int ini = i / N, outi = i % N + 1; if(ini <= ins && outs <= outi) { p = i; continue; } if(ini <= in_t && outt <= outi) return i; } assert(p != -1); return p; */}

Compilation message (stderr)

stations.cpp: In function 'std::vector<int> label(int, int, std::vector<int>, std::vector<int>)':
stations.cpp:32:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   32 |   for(int i = 0; i < u.size(); 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...