제출 #96343

#제출 시각아이디문제언어결과실행 시간메모리
96343ShaneOngGap (APIO16_gap)C++14
100 / 100
64 ms1276 KiB
#include "gap.h"
#include<bits/stdc++.h>
using namespace std;

long long findGap(int T, int n){
    long long ans=0ll;
    if(T==1){
        long long l=0ll,r=1000000000000000000ll;
        MinMax(l,r,&l,&r);
        int temp=2;
        for(int x=0;temp<n;x++){
            long long newl=-1ll,newr=-1ll;
            if(l+1ll<r-1ll)
                MinMax(l+1ll,r-1ll,&newl,&newr);
            if(newl!=-1ll){
                ans=max(ans,max(newl-l,r-newr));
                l=newl;
                r=newr;
            }
            temp+=2;
        }
        if(n==2)
            ans=r-l;
    }else{
        long long l=0ll,r=1000000000000000000ll;
        MinMax(l,r,&l,&r);
        int temp=2;
        long long interv = (r-l+n-2ll)/(n-1ll),pre=l;

        for(int x=0;x<n-1;x++){
            long long a=l+x*interv+1ll,b=l+(x+1ll)*interv,c,d;
            MinMax(a,b,&c,&d);
            if(c!=-1ll){
                ans=max(ans,d-c);
                if(pre!=-1ll)
					ans=max(ans,c-pre);
				pre=d;
            }


        }
        if(pre!=-1ll)
            ans=max(ans,r-pre);

    }
	return ans;
}

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

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:27:13: warning: unused variable 'temp' [-Wunused-variable]
         int temp=2;
             ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...