제출 #47283

#제출 시각아이디문제언어결과실행 시간메모리
47283yogahmadGap (APIO16_gap)C++14
70 / 100
87 ms3544 KiB
#include "gap.h"
#include<bits/stdc++.h>
using namespace std;
long long findGap(int T, int N)
{
	if(T==1){
		long long sa,du;
		long long *kiri,*kanan;
		kiri=&sa;
		kanan=&du;
		MinMax(0,1e18,kiri,kanan);
		vector<long long>ve;
		ve.push_back(*kiri);
		long long jaw=0;
		ve.push_back(*kanan);
		while(1){
		//	cout<<*kiri<<" "<<*kanan<<endl;
			if(*kiri>*kanan)
				break;
			if(*kiri+1>*kanan-1)
				break;
			MinMax(*kiri+1,*kanan-1,kiri,kanan);
			if(*kiri==-1 && *kanan==-1)
				break;
			ve.push_back(*kiri);
			ve.push_back(*kanan);
		}
		sort(ve.begin(),ve.end());
		for(int i=1;i<ve.size();i++)
			jaw=max(jaw,ve[i]-ve[i-1]);
	//	cout<<jaw<<endl;
		return jaw;
	}
//	cout<<T<<" "<<N<<endl;
	long long sa,du,ti,em;
	vector<long long>ve;
	long long *kiri,*kanan;
	kiri=&sa;
	kanan=&du;
	MinMax(0,1e18,kiri,kanan);
//	cout<<*kiri<<' '<<*kanan<<endl;
	long long gap=(*kanan-*kiri)/(N-1);
	long long jaw=0;
//	cout<<*kiri<<" "<<*kanan<<" "<<gap<<endl;
	long long awal;
	for(awal=*kiri;awal<=*kanan;awal+=gap+1){
	//	cout<<awal<<" <<<___\n";
		long long *lo,*hi;
		lo=&ti;
		hi=&em;
		MinMax(awal,awal+gap,lo,hi);
	//	cout<<awal<<' '<<awal+gap<<" -> "<<*lo<<" "<<*hi<<endl;
		if(*lo==-1 && *hi==-1)
			continue;
		ve.push_back(*lo);
		ve.push_back(*hi);
	}
//	cout<<awal<<endl;
	sort(ve.begin(),ve.end());
//	for(int i:ve)
	//	cout<<i<<' ';
//	cout<<endl;
	for(int i=1;i<ve.size();i++){
		jaw=max(jaw,ve[i]-ve[i-1]);
	}
//	cout<<jaw<<endl;
	return jaw;
}

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

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:29:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int i=1;i<ve.size();i++)
               ~^~~~~~~~~~
gap.cpp:63:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=1;i<ve.size();i++){
              ~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...