이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "gap.h"
#include<bits/stdc++.h>
using namespace std;
#define mp make_pair
#define INF 10000000
#define MOD 1000000007
#define MID ((l+r)/2)
#define HASHMOD 2305843009213693951
#define ll long long
#define ull unsigned long long
#define F first
#define S second
typedef pair<ll, ll> ii;
typedef pair<ii, int> iii;
typedef vector<int> vi;
typedef vector<ii> vii;
typedef map<int, int> mii;
#define EPS 1e-6
#define FOR(i,n) for(int i=0;i<((int)(n));i++)
#define FORi(i,a,b) for(int i=((int)(a));i<((int)(b));i++)
#define FOA(v, a) for(auto v : a)
int t, n;
vi a, b;
long long findGap(int T, int n){
long long int a1=0, an=0;
MinMax(0, (ll)1e18, &a1, &an);
long long ans = (an - a1 + n - 2) / (n-1);
long long start = a1 + 1;
long long ansstart=start;
while(start+ans < an){
long long a=0, b=0;
//cout<<start<<" "<<start + ans<<endl;
MinMax(start, start + ans, &a, &b);
//cout<<start<<" "<<start + ans<<" "<<a<<" "<<b<<endl;
if(a==-1){
if(ansstart==-1) ansstart = start - 1;
start += ans;
}
else{
if(ansstart==-1) ansstart = b, start = b+1;
else ans = max(ans, a-ansstart), ansstart=b, start+=ans;
}
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |