#include "souvenirs.h"
#include <utility>
#include <vector>
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ff first
#define ss second
void buy_souvenirs(int N, long long P0) {
long long pl= max(1ll, P0 -2ll*(N-1));
vector<ll>p(N) ,cnt(N);
while(1){
std::pair<std::vector<int>, long long> res = transaction(pl);
if(res.ff.size()==1){
p[N-1]=pl;
break;
}
pl++;
}
cnt[N-1]++;
for(int i=N-2;i>=0;i--){
std::pair<std::vector<int>, long long> res = transaction(p[i+1]+1);
if(res.ff[0]==i){
cnt[i]++;
p[i]=p[i+1]+1;
}
else{
cnt[i+1]++;
p[i]=p[i+1]+2;
}
}
for(int i=1;i<N;i++){
for(int j=cnt[i];j<i;j++){
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... |