제출 #1251059

#제출 시각아이디문제언어결과실행 시간메모리
1251059hihihahaaSouvenirs (IOI25_souvenirs)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h> #include <souvenirs.h> using namespace std; struct Equation { vector<int> elem; long long sum; Equation(vector<int> e, long long s) : elem(e), sum(s) {} void clear(vector<long long>& P, int bottom) { while (elem.back() > bottom) { // elem[0] should not be less than bottom, so no need to check elem.empty(); sum -= P[elem.back()]; elem.pop_back(); } } }; Equation modified_transaction(long long M) { pair<vector<int>, long long> raw = transaction(M); return {raw.first, M - raw.second}; } void buy_souvenirs(int N, long long P0) { vector<long long> P(N, 0); vector<int> kpi(N); // track how many of each type has been bought for (int i = 0; i < N; i++) kpi[i] = i; stack<Equation> S; // store info int bottom = N - 1; // found P[i] forall i > bottom; S.push({{0}, P0}); // find P while (bottom) { Equation u = S.top(); u.clear(P, bottom); if (u.elem.size() == 1 && u.elem[0] == bottom) { S.pop(); P[bottom] = u.sum; bottom--; } else { long long amount = u.sum/u.elem.size() - 1; Equation next = modified_transaction(amount); for (auto i: next.elem) kpi[i]--; S.push(next); } } // clean up for (int i = 0; i < N; i++) while (kpi[i]--) transaction(P[i]); }

컴파일 시 표준 에러 (stderr) 메시지

souvenirs.cpp:2:10: fatal error: souvenirs.h: No such file or directory
    2 | #include <souvenirs.h>
      |          ^~~~~~~~~~~~~
compilation terminated.