제출 #656722

#제출 시각아이디문제언어결과실행 시간메모리
656722Ronin13Gap (APIO16_gap)C++14
100 / 100
60 ms2640 KiB
#include "gap.h" #include <bits/stdc++.h> #define ll long long #define f first #define s second #define pii pair<int,int> #define pll pair<ll,ll> #define pb push_back #define epb emplace_back #define ull unsigned ll using namespace std; long long findGap(int T, int N){ ll n = N; if(T == 1){ ll l = 0, r = 1e18; ll mn, mx; vector <ll> a, b; int cnt = 0; while(l < r){ if(cnt >= (n + 1) / 2) break; cnt++; MinMax(l, r, &mn, &mx); if(mn == -1 || mx == -1) break; if(mn != -1)a.pb(mn); if(mx != -1)b.pb(mx); l = mn + 1; r = mx - 1; } reverse(b.begin(), b.end()); for(ll to : b) a.pb(to); ll ans = 0; for(int i = 1; i < a.size(); i++) ans = max(ans, a[i] - a[i - 1]); return ans; } ll l, r; l = 0, r = 1e18; vector <ll> vec; ll mn, mx; MinMax(l, r, &mn, &mx); vec.pb(mn); ll v = mn; ll d = mx - mn; d = (d + (n - 2) )/ (n - 1); l = mn; ll D = mx; for(int i = 1; i <= n; i++){ ll L = l + d; MinMax(l + 1, l + d, &mn, &mx); l = max(L, mx + 1); if(mn != -1) vec.pb(mn); if(mn != mx) if(mx != -1) vec.pb(mx); } // for(ll to : vec) cout << to << ' '; ll ans = 0; for(int i = 1; i < vec.size(); i++) ans = max(ans, vec[i] - vec[i - 1]); return ans; }

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

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:38:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   38 |         for(int i = 1; i < a.size(); i++) ans = max(ans, a[i] - a[i - 1]);
      |                        ~~^~~~~~~~~~
gap.cpp:63:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   63 |     for(int i = 1; i < vec.size(); i++) ans = max(ans, vec[i] - vec[i - 1]);
      |                    ~~^~~~~~~~~~~~
gap.cpp:47:8: warning: unused variable 'v' [-Wunused-variable]
   47 |     ll v = mn;
      |        ^
gap.cpp:51:8: warning: unused variable 'D' [-Wunused-variable]
   51 |     ll D = mx;
      |        ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...