제출 #1018702

#제출 시각아이디문제언어결과실행 시간메모리
1018702j_vdd16기지국 (IOI20_stations)C++17
100 / 100
632 ms1284 KiB
#include <algorithm> #include <bitset> #include <cstdint> #include <cstring> #include <iostream> #include <limits.h> #include <math.h> #include <map> #include <numeric> #include <queue> #include <set> #include <stack> #include <string> #include <vector> //#define int long long #define loop(X, N) for(int X = 0; X < (N); X++) #define all(V) V.begin(), V.end() #define rall(V) V.rbegin(), V.rend() using namespace std; typedef vector<int> vi; typedef vector<vi> vvi; typedef pair<int, int> ii; typedef vector<ii> vii; typedef vector<vector<ii>> vvii; typedef vector<bool> vb; typedef vector<vector<bool>> vvb; vvi adj; vi labels; int counter = 0; void dfs(int node, int parent, bool isFirst) { if (isFirst) labels[node] = counter++; for (int child : adj[node]) { if (child == parent) continue; dfs(child, node, !isFirst); } if (!isFirst) labels[node] = counter++; } vi label(int n, int k, vi u, vi v) { counter = 0; labels.assign(n, 0); adj.assign(n, {}); loop(i, n - 1) { adj[u[i]].push_back(v[i]); adj[v[i]].push_back(u[i]); } dfs(0, -1, true); return labels; } int find_next_station(int s, int t, vi c) { sort(all(c)); if (c.back() < s) { if (t > s || t <= c[0]) return c[0]; for (int i = c.size() - 1; i >= 0; i--) { if (t >= c[i]) return c[i]; } } else { if (t < s || t >= c.back()) return c.back(); for (int i = 0; i < c.size(); i++) { if (t <= c[i]) return c[i]; } } }

컴파일 시 표준 에러 (stderr) 메시지

stations.cpp: In function 'int find_next_station(int, int, vi)':
stations.cpp:88:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   88 |   for (int i = 0; i < c.size(); i++)
      |                   ~~^~~~~~~~~~
stations.cpp:94:1: warning: control reaches end of non-void function [-Wreturn-type]
   94 | }
      | ^
#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...