제출 #47961

#제출 시각아이디문제언어결과실행 시간메모리
479613zpGap (APIO16_gap)C++14
70 / 100
68 ms1532 KiB
#include "gap.h"
#define ll long long
#include<bits/stdc++.h>
using namespace std;
long long findGap(int T, int N)
{
    ll s, t;
    MinMax(0, 1e18, &s, &t);
    ll L = t - s;
    ll d = (L+N-2) / (N - 1);
    ll ans = d;
    d++;
    ll x = s;
    while(x != t){
        ll p, q;
        if(x + d >= t) break;
         MinMax(x + 1, x + d, &p , &q);
        if(q != -1) {
            ans = max(ans, x - p);
            x = q;
            continue;
        }
        int w = 2;
        while(1){

            MinMax(x + 1,min( x + w * d, (ll)1e18),&p , &q);
            if(q == -1) {w++; continue;}
            ans = max(ans, p - x);
            d = ans;
            x = q;
            break;
        }
    }
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...