#include "souvenirs.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
ll c[100], t[100], n;
void recur(long long p){
auto [l, r] = transaction(p);
for (auto i : l) t[i]++;
while (l.size() > 1){
if (c[l.back()]) r += c[l.back()], l.pop_back();
else recur((p - r) / l.size());
}
c[l[0]] = p - r;
if (c[l[0] + 1] == 0 and l[0] != n - 1) recur(c[l[0]] - 1);
}
void buy_souvenirs(int N, ll p)
{
n = N, recur(p - 1);
for(int i = 1; i < n; i++) while(t[i] < i) transaction(c[i]),t[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... |