# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1278353 | dang_minh_duc | Souvenirs (IOI25_souvenirs) | C++20 | 0 ms | 0 KiB |
#include <bits/stdc++.h>
#include "souvenirs.h"
#define int long long
using namespace std;
vector<int>p;
void buy_souvenirs(int n, long long P0){
p.resize(n, 0);
p[0]=P0;
pair<vector<int>, int>buy=transaction(p[0]-1);
if (buy.fi.size()==1) {
p[1]=p[0]-1-buy.se;
transaction(p[1]-1);
transaction(p[1]-1);
}
else {
int mid=(p[0]-1-buy.se)>>1;
transaction(mid);
}
}