Submission #591791

#TimeUsernameProblemLanguageResultExecution timeMemory
591791APROHACK기지국 (IOI20_stations)C++14
100 / 100
902 ms788 KiB
#include "stations.h" #include <bits/stdc++.h> #include <vector> #define ff first #define ss second #define ll long long #define pb push_back using namespace std; const int N = 1005; vector<int>adj[N]; bool vis[N]; int cur = 0; int labeled[N]; void dfs(int node, bool in){ vis[node]=true; if(in)labeled[node]=cur++; for(int i = 0 ;i < adj[node].size() ; i++){ if(!vis[adj[node][i]])dfs(adj[node][i], !in); } if(!in)labeled[node]=cur++; } vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) { cur=0; memset(vis, false, sizeof vis); for(int i = 0 ; i < n ; i++){ adj[i].clear(); } vector<int> labels(n); for(int i = 0 ; i < n-1 ; i ++){ adj[u[i]].pb(v[i]); adj[v[i]].pb(u[i]); } dfs(0, true); for(int i = 0 ; i < n ; i ++){ labels[i]=labeled[i]; } return labels; } int find_next_station(int s, int t, vector<int> c) { if(c[0]>s){ //es un in if(t<s || t>=c[c.size()-1]){ return c[c.size()-1]; }else{ int ans = 0; for(int i = c.size()-1 ; i>= 0 ; i--){ if(c[i]>=t)ans=i; } return c[ans]; } }else{ // es un out if(t>s || t<=c[0]){ return c[0]; }else{ int ans = 0; for(int i = 0 ; i < c.size() ; i++){ if(c[i]<=t)ans=i; } return c[ans]; } } }

Compilation message (stderr)

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