Submission #1272150

#TimeUsernameProblemLanguageResultExecution timeMemory
1272150AvianshGap (APIO16_gap)C++20
30 / 100
40 ms3236 KiB
#include "gap.h"

#include <bits/stdc++.h>

using namespace std;

long long findGap(int t, int n)
{
    if(t==1){
        long long arr[n];
        long long s = 0;
        long long t = 1e18;
        for(int i = 0;i<(n+1)/2;i++){
            MinMax(s,t,&arr[i],&arr[n-i-1]);
            s=arr[i]+1;
            t=arr[n-i-1]-1;
        }
        long long ans = 0;
        for(int i = 0;i<n-1;i++){
            ans=max(ans,arr[i+1]-arr[i]);
        }
        return ans;
    }
    else if(t==2){
        long long mn,mx;
        MinMax(0,1e18,&mn,&mx);
        long long ans = max(1LL,(mx-mn+n-2)/(n-1)-5);
        long long l = mn+1;
        long long las = l;
        while(l<mx){
            long long cmn,cmx;
            MinMax(l,l+ans,&cmn,&cmx);
            if(cmn==-1){
                l=l+ans+1;
                continue;
            }
            ans=max(ans,cmn-las);
            l=l+ans+1;
            las=cmx;
        }
        return ans;
    }
}

Compilation message (stderr)

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:43:1: warning: control reaches end of non-void function [-Wreturn-type]
   43 | }
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...