제출 #486934

#제출 시각아이디문제언어결과실행 시간메모리
486934cfalasGap (APIO16_gap)C++14
0 / 100
48 ms1180 KiB
#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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...