Submission #295876

#TimeUsernameProblemLanguageResultExecution timeMemory
295876dCodingGap (APIO16_gap)C++14
0 / 100
49 ms2212 KiB
#include <bits/stdc++.h>
#include "gap.h"
using namespace std;
#define ll long long 

ll findGap(int t, int n) {
	ll lo = 0, hi = 1e18;
	vector<ll> l,h;
	ll mn = 0,mx = 0;
	int qc = 0;
	while(l.size()+h.size() < n) {
		MinMax(lo,hi,&mn,&mx);
		++qc;
		assert((mn!=-1) && (mx!=-1));
		if(mn == mx) {
			l.push_back(mn);
		} else {
			l.push_back(mn);
			h.push_back(mx);
		}
		lo = mn;
		hi = mx;
	}
	assert(qc <= (n+1)/2);
	ll ans = 0;
	for(int i=1;i<l.size();i++) ans = max(ans, l[i]-l[i-1]);
	for(int i=1;i<h.size();i++) ans = max(ans, h[i]-h[i-1]);
	ans = max(ans, h[0]-l.back());
	return ans;
}

Compilation message (stderr)

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