#include <bits/stdc++.h>
using namespace std;
pair<vector<int>, long long> transaction(long long M);
void buy_souvenirs(int N, long long P0) {
vector<long long> P(N);
P[0] = P0;
for (int i = 1; i < N; i++) {
long long lo = 1, hi = P[i-1] - 1, found = -1;
while (lo <= hi) {
long long mid = (lo + hi) / 2;
auto res = transaction(mid);
if (res.first.empty()) {
lo = mid + 1;
} else {
int type = res.first[0];
if (type == i) {
found = mid;
hi = mid - 1;
} else if (type < i) {
lo = mid + 1;
} else {
hi = mid - 1;
}
}
}
P[i] = found;
}
for (int i = 1; i < N; i++) {
for (int k = 0; k < i; k++) {
transaction(P[i]);
}
}
}
# | 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... |