有1元、5元、10元、50元、100元、500元的硬币各C1、C5、C10、C50、C100、C500枚。
现在要用这些硬币来支付A元,最少需要多少枚硬币?假设至少存在一种支付方式。
// Values of coins const int V[6] = {1, 5, 10, 50, 100, 500}; // Input int A, C[6]; void solve() { int ans = 0, i, t; for(i = 5; i >= 0; i--) { t = min(A/V[i], C[i]); A -= T*v[i]; ans += t; } printf("%d ", ans); }