Submission #108932

#TimeUsernameProblemLanguageResultExecution timeMemory
108932autumn_eelGap (APIO16_gap)C++14
0 / 100
52 ms2040 KiB
#include <bits/stdc++.h>
#define rep(i,n)for(int i=0;i<(n);i++)
using namespace std;
typedef long long ll;

#include "gap.h"


ll solve1(int n){
	deque<ll>f,r;
	while(f.size()+r.size()<n){
		ll mn,mx;
		ll L=(f.empty()?0:f.back()+1),R=(r.empty()?1e18:r.front()-1);
		MinMax(L,R,&mn,&mx);
		assert(mn!=-1);
		f.push_back(mn);
		if(mn!=mx)r.push_front(mx);
	}
	while(!r.empty()){
		f.push_back(r.front());
		r.pop_front();
	}
	assert(f.size()==n);
	ll ans=0;
	rep(i,n-1)ans=max(ans,f[i+1]-f[i]);
	return ans;
}
ll solve2(int n){
	return 0;
}

long long findGap(int T, int N){
	if(T==1)return solve1(N);
	return solve2(N);
}

Compilation message (stderr)

gap.cpp: In function 'll solve1(int)':
gap.cpp:11:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  while(f.size()+r.size()<n){
        ~~~~~~~~~~~~~~~~~^~
In file included from /usr/include/c++/7/cassert:44:0,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:33,
                 from gap.cpp:1:
gap.cpp:23:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  assert(f.size()==n);
         ~~~~~~~~^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...