Submission #497666

#TimeUsernameProblemLanguageResultExecution timeMemory
497666Hanksburger기지국 (IOI20_stations)C++17
100 / 100
998 ms764 KiB
#include "stations.h" #include <bits/stdc++.h> using namespace std; vector<int> adj[1005], ans; int dfs(int U, int P, int cnt, bool X) { if (X) { ans[U]=cnt; cnt++; for (int i=0; i<adj[U].size(); i++) { int V=adj[U][i]; if (V!=P) cnt=dfs(V, U, cnt, 0); } } else { for (int i=0; i<adj[U].size(); i++) { int V=adj[U][i]; if (V!=P) cnt=dfs(V, U, cnt, 1); } ans[U]=cnt; cnt++; } return cnt; } vector<int> label(int N, int K, vector<int> U, vector<int> V) { for (int i=0; i<N; i++) adj[i].clear(); for (int i=0; i<N-1; i++) { adj[U[i]].push_back(V[i]); adj[V[i]].push_back(U[i]); } ans.clear(); for (int i=0; i<N; i++) ans.push_back(0); dfs(0, -1, 0, 1); return ans; } int find_next_station(int S, int T, vector<int> C) { if (S<C[0]) { int P=C[C.size()-1]; if (T<S || T>=P) return P; for (int i=0; i<C.size(); i++) if (T<=C[i]) return C[i]; } else { int P=C[0]; if (T<=P || T>S) return P; for (int i=C.size()-1; i>=0; i--) if (T>=C[i]) return C[i]; } }

Compilation message (stderr)

stations.cpp: In function 'int dfs(int, int, int, bool)':
stations.cpp:11:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 |   for (int i=0; i<adj[U].size(); i++)
      |                 ~^~~~~~~~~~~~~~
stations.cpp:20:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   20 |   for (int i=0; i<adj[U].size(); i++)
      |                 ~^~~~~~~~~~~~~~
stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:53:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   53 |   for (int i=0; i<C.size(); i++)
      |                 ~^~~~~~~~~
stations.cpp:66:1: warning: control reaches end of non-void function [-Wreturn-type]
   66 | }
      | ^
#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...