Submission #1305244

#TimeUsernameProblemLanguageResultExecution timeMemory
1305244petezaSouvenirs (IOI25_souvenirs)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; /* int costs[5] = {30,21,20,15,6}; pair<vector<int>, ll> transaction(ll m) { vector<int> res; for(int i=0;i<5;i++) { if(costs[i]<=m) { res.push_back(i); m -= costs[i]; } } return {res, m}; }*/ int n; void rec(vector<int>&cnt, vector<ll>&cost, int idx, ll cc) { if(idx>=n) return; if(~cost[idx]) return; auto res = transaction(cc-1); for(auto&e:res.first)cnt[e]++; while(res.first.size() > 1) { if(!(~cost[res.first.back()])) { rec(cnt, cost, res.first.back(), (cc-1-res.second)/res.first.size()); } res.second += cost[res.first.back()]; res.first.pop_back(); } //cout << idx << "->" << cc-1 << "\n"; cost[idx] = cc-1-res.second; rec(cnt, cost, idx+1, cost[idx]); } void buy_souvenirs(int n, ll p0) { ::n=n; vector<int> cnt(n); vector<ll> cost(n, -1); cost[0]=p0; rec(cnt, cost, 1, p0); for(int i=0;i<n;i++) { //cout << cost[i] << " "; while(cnt[i]<i) { cnt[i]++; transaction(cost[i]); } } } /* int main() { // your code goes here buy_souvenirs(5, 30); return 0; }*/

Compilation message (stderr)

souvenirs.cpp: In function 'void rec(std::vector<int>&, std::vector<long long int>&, int, ll)':
souvenirs.cpp:23:20: error: 'transaction' was not declared in this scope
   23 |         auto res = transaction(cc-1);
      |                    ^~~~~~~~~~~
souvenirs.cpp: In function 'void buy_souvenirs(int, ll)':
souvenirs.cpp:47:25: error: 'transaction' was not declared in this scope
   47 |                         transaction(cost[i]);
      |                         ^~~~~~~~~~~