Submission #338956

#TimeUsernameProblemLanguageResultExecution timeMemory
338956ogibogi2004Gap (APIO16_gap)C++14
78.54 / 100
71 ms3440 KiB
#include<bits/stdc++.h>
#include "gap.h"
using namespace std;
long long findGap(int T,int N)
{
	long long l,r,n=N;
	if(T==1)
	{
		MinMax(0ll,(long long)1e18,&l,&r);
		vector<long long> numbers;
		numbers.push_back(l);
		numbers.push_back(r);
		//cout<<l<<" "<<r<<endl;
		for(int j=1;j<(n+1)/2;j++)
		{
			MinMax(l+1,r-1,&l,&r);
			if(l==-1)break;
			numbers.push_back(l);
			numbers.push_back(r);
			//cout<<"??\n";
		}
		sort(numbers.begin(),numbers.end());
		long long ans=0;
		for(long long i=1;i<numbers.size();i++)
		{
			ans=max(ans,numbers[i]-numbers[i-1]);
		}
		return ans;
	}
	if(T==2)
	{
		MinMax(0ll,(long long)1e18,&l,&r);
		long long bucket_size=max(2ll,(r-l)/n);
		vector<long long>numbers;
		for(long long i=0;i*bucket_size+l<=r;i++)
		{
			long long xd1,xd2;
			MinMax(i*bucket_size+l,(i+1)*bucket_size+l-1,&xd1,&xd2);
			if(xd1!=-1)numbers.push_back(xd1);
			if(xd2!=-1)numbers.push_back(xd2);
		}
		long long ans=0;
		for(long long i=1;i<numbers.size();i++)
		{
			ans=max(ans,numbers[i]-numbers[i-1]);
		}
		return ans;
	}
}

Compilation message (stderr)

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:24:22: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   24 |   for(long long i=1;i<numbers.size();i++)
      |                     ~^~~~~~~~~~~~~~~
gap.cpp:43:22: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   43 |   for(long long i=1;i<numbers.size();i++)
      |                     ~^~~~~~~~~~~~~~~
gap.cpp:49:1: warning: control reaches end of non-void function [-Wreturn-type]
   49 | }
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...