Submission #367196

#TimeUsernameProblemLanguageResultExecution timeMemory
367196rumen_mStations (IOI20_stations)C++17
100 / 100
1152 ms1208 KiB
#include "stations.h" #include <vector> #include <bits/stdc++.h> using namespace std; const int maxn=1005; std::vector<int> labelss; vector <int> g[maxn]; int id; void dfs(int v, bool level, int par) { // cout<<v<<" "<<level<<endl; if(level==1) { id++; labelss[v] = id; } int u; int i; for(i = 0; i<g[v].size();i++) { u = g[v][i]; if(u==par)continue; // cout<<v<<"->"<<u<<endl; dfs(u,!level,v); } if(level==0) { id++; labelss[v] = id; } } std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) { labelss.clear(); labelss.resize(n); int i; for(i=0;i<n;i++) g[i].clear(); for(i=0;i<n-1;i++) { // cout<<v[i]<<"&&"<<u[i]<<endl; g[u[i]].push_back(v[i]); g[v[i]].push_back(u[i]); }// cout<<"OJK"<<endl; id = 0; dfs(0,1,-1); // for(i=0;i<n;i++) // // cout<<labelss[i]<<" "; // cout<<endl; return labelss; } int find_next_station(int s, int t, std::vector<int> c) { sort(c.begin(),c.end()); int k =c.size(); if(s<c[0]) { if(t<=s)return c[k-1]; int i; for(i=0;i<k;i++) { if(t<=c[i])return c[i]; } return c[k-1]; } else { if(t>=s)return c[0]; int i; for(i=1;i<k;i++) { if(t<c[i])return c[i-1]; } return c[k-1]; } //return c[0]; }

Compilation message (stderr)

stations.cpp: In function 'void dfs(int, bool, int)':
stations.cpp:19:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |     for(i = 0; i<g[v].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...