제출 #954754

#제출 시각아이디문제언어결과실행 시간메모리
954754ItamarGap (APIO16_gap)C++14
0 / 100
1609 ms524288 KiB
#include "gap.h" using namespace std; #define ll long long #include <vector> #define vll vector<ll> #include <algorithm> long long findGap(int T, int N) { if (T == 1) { ll a = -1, b = 1e18 + 1; vll v; for (int it = 0; it < (N + 1) / 2; it++) { auto *at = new ll, *bt = new ll; MinMax(a + 1, b - 1, at, bt); a = *at, b = *bt; v.push_back(a); if(a!=b)v.push_back(b); } sort(v.begin(), v.end()); ll ans = 0; for (int i = 0; i < v.size() - 1; i++)ans = max(ans, v[i + 1] - v[i]); return ans; } else { auto* a = new ll, * b = new ll; MinMax(0, 1e18, a, b); vll v; ll d = ((* b) - (* a) + N - 2) / (N - 1); for (int i = *a; i < *b; i += d + 1) { auto *c = new ll, * k = new ll; MinMax(i, i+d, c, k); v.push_back(*c); v.push_back(*k); } sort(v.begin(), v.end()); ll ans = d; for (int i = 0; i < v.size() - 1; i++) { if (v[i] > -1) { ans = max(ans, v[i + 1] - v[i]); } } return ans; } }

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

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:20:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   20 |   for (int i = 0; i < v.size() - 1; i++)ans = max(ans, v[i + 1] - v[i]);
      |                   ~~^~~~~~~~~~~~~~
gap.cpp:35:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |   for (int i = 0; i < v.size() - 1; i++) {
      |                   ~~^~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...