Submission #76383

#TimeUsernameProblemLanguageResultExecution timeMemory
76383vexGap (APIO16_gap)C++14
30 / 100
61 ms2172 KiB
#include <bits/stdc++.h>
#include<gap.h>
#define maxn 100005
#define INF 1e18 + 1000
using namespace std;

int n;
long long a[maxn];

long long findGap(int t,int n)
{
    if(t==1)
    {
        int br=1;
        long long mn,mx;
        a[0]=0;
        a[n+1]=INF;
        while(br<=(n+1)/2)
        {
            MinMax(a[br-1]+1,a[n+2-br]-1,&mn,&mx);
            a[br]=mn;
            a[n+1-br]=mx;
            br++;
        }
        
        long long sol=0;
        for(int i=1;i<n;i++)
        {
            if(a[i+1]-a[i]>sol)sol=a[i+1]-a[i];
        }
        return sol;
    }
    
    long long mn,mx;
    int exp=INF/(n-1);
    long long last=0;
    long long sol=0;
    
    int d=0;
    while(d<INF)
    {
        MinMax(d+1,d+exp,&mn,&mx);
        if(mn!=-1)
        {
            if(mn-last>sol)sol=mn-last;
            last=mx;
        }
        d+=exp;
    }
    
    return sol;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...