제출 #110750

#제출 시각아이디문제언어결과실행 시간메모리
110750TAISA_Gap (APIO16_gap)C++14
컴파일 에러
0 ms0 KiB
#include "gap.h" #include <bits/stdc++.h> using namespace std; using ll = long long; /*void MinMax(ll l, ll r, ll& mi, ll& ma) { cout << l << " " << r << endl; cin >> mi >> ma; }*/ ll findGap(int T, int n) { ll INF = 1000000000000000000LL; ll N = n; ll mi, ma; MinMax(0LL, INF, &mi, &ma); if(N == ma - mi + 1LL) { return 1LL; } if(T == 1) { vector<ll> v1, v2; v1.push_back(mi); v2.push_back(ma); for(int i = 0; i < N / 2 - 1; i++) { MinMax(mi + 1LL, ma - 1LL, &mi, &ma); v1.push_back(mi); v2.push_back(ma); } if(N % 2) { MinMax(mi + 1LL, ma - 1LL, &mi, &ma); v1.push_back(mi); } reverse(all(v2)); for(auto e : v2) { v1.push_back(e); } ll res = 0; for(int i = 1; i < N; i++) { res = max(res, v1[i] - v1[i - 1]); } return res; } else { ll l = (ma - mi + 1LL) / (N + 1LL) + 1LL, m = (ma - mi + 1LL) % (N + 1LL); ll b = mi, res = 0, t = mi, s = 0; bool f = false; for(int i = 0; i < N + 1; i++) { ll nl = l - (i >= m); MinMax(t, t + nl - 1LL, &mi, &ma); if(mi == -1) { if(f) { s += nl; } else { s += nl + (t - b); f = true; } } else { if(f) { s += mi - t; res = max(res, s); s = 0; f = false; } b = ma; } t += nl; } return res; } } /*int main() { cout << findGap(0, 4) << endl; }*/

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

gap.cpp: In function 'll findGap(int, int)':
gap.cpp:30:17: error: 'all' was not declared in this scope
         reverse(all(v2));
                 ^~~
gap.cpp:30:17: note: suggested alternative: 'll'
         reverse(all(v2));
                 ^~~
                 ll