#include <bits/stdc++.h>
using namespace std;
pair<vector<int>, long long> transaction(long long M);
void buy_souvenirs(int N, long long P0){
pair<vector<int>, long long> r;
long long c;
if(N == 2){
auto pii = transaction(P0-1);
} else if(N == 3){
auto pii = transaction(P0-1);
if(pii.first.size() == 2){
auto p3 = transaction((P0-1-pii.second)/2);
return;
}
auto p = transaction(P0-2-pii.second);
auto p2 = transaction(P0-2-pii.second);
} else if (P0 == N) {
c = P0-1;
for (int i = 1; i <= N-1; i++) {
for (int j = 1; j <= i; j++) r = transaction(c);
c--;
}
return;
} else {
int t = 0;
c = P0-1;
for (int i = 1; i < N-1; i++){
for (int j = 1; j <= i; j++){
r = transaction(c);
if ((int)r.first.size() > 1){
t++;
c--;
}
if(r.second > 0) c--;
if(c < 1) c = 1;
}
c--;
if (c < 1) c = 1;
}
for(int i = t+1; i <= N-1; i++){
r = transaction(c);
}
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... |