제출 #1250542

#제출 시각아이디문제언어결과실행 시간메모리
1250542tranvinhhuy2010선물 (IOI25_souvenirs)C++20
컴파일 에러
0 ms0 KiB
#include "souvenirs.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; int n, cnt[105]; ll p[105]; ll adu_calculate(ll s, int k) { s += k*(k-1)/2 + k - 1; return s/k; } void adu_build(ll money) { auto [a, remain] = transaction(money); int k = a.size(); ll sum = money - remain; for (int i : a) cnt[i]++; if (k>1) { ll x = adu_calculate(sum, k); adu_build(x-1); } while (a.size()>1) { sum -= p[a.back()]; a.pop_back(); } p[a[0]] = sum; if (a[0]+1<n && p[a[0]+1]==0) adu_build(p[a[0]]-1); } void adu_complete() { for (int i=1; i<n; i++) { while (cnt[i]<i) { transaction(p[i]); cnt[i]++; } } } void buy_souvenirs(int N, ll P0) { n = N; p[0] = P0; adu_build(P0-1); adu_complete(); } int main() { buy_souvenirs(P.size(), P[0]); for (int i=1; i<n; i++) cout << cnt[i] << ' '; return 0; }

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

souvenirs.cpp: In function 'int main()':
souvenirs.cpp:56:19: error: 'P' was not declared in this scope
   56 |     buy_souvenirs(P.size(), P[0]);
      |                   ^