#include <bits/stdc++.h>
#include "books.h"
using namespace std;
long long int B[100005];
const long long int INF = 1e17 + 1;
void solve(int N, int K, long long A, int S) {
for(int i=1;i<=N;++i) {
B[i] = skim(i);
}
for(int i=1;i<=N;++i) {
for(int j=i+1;j<=N;++j) {
int bi = B[i];
int bj = B[j];
if (i == 1) B[i] = -INF;
else B[i] = B[i-1];
if (j == N) B[j] = INF;
else B[j] = B[j+1];
int low = A-bi-bj;
int high = 2*A - bi - bj;
int l=1,r=N;
while (l <= r) {
int mid = (l+r)/2;
if (low <= B[mid] and B[mid] <= high) {
if (mid == i) mid--;
if (mid == j) mid++;
answer({i,j,mid});
break;
}
else if (B[mid] < low) {
l = mid+1;
}
else r = mid-1;
}
B[i] = bi;
B[j] = bj;
}
}
impossible();
return;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |