# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1260469 | JvThunder | Souvenirs (IOI25_souvenirs) | C++20 | 0 ms | 0 KiB |
#include "souvenirs.h"
#include <utility>
#include <vector>
using namespace std;
void buy_souvenirs(int N, long long P0) {
ll prv = P0;
int ones_time = 0;
pair<vector<int>, long long> res;
for(int i = 1; i < N; i++) {
res = transaction(prv-1);
long long curr;
if(res.first.size() == 2) {
ones_time++;
curr = prv-2;
} else {
curr = prv-1;
}
for(int j = 0; j < i-1; j++) res = transaction(curr);
prv = curr;
}
for(int i = 0; i < N-ones_time; i++) res = transaction(prv);
}