标签:int bsp mon orm desc pad types money others
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 18271 Accepted Submission(s): 6291
找零钱问题,但是限制了一次找零的硬币数量
下面就直接暴力了
#include <iostream> using namespace std; const int Max = 251; const int a[] = {1,5,10,25,50}; long dp[Max]; void change() { dp[0] = 1; for (int m = 1; m <= Max; m++) { for (int i50 = 0; i50 <= m / 50; i50++) { for (int i25 = 0; i25 <= (m - i50 * 50) / 25; i25++) { for (int i10 = 0; i10 <= (m - i50 * 50 - i25 * 25) / 10; i10++) { for (int i5 = 0; i5 <= (m - i50 * 50 - i25 * 25 - i10 * 10) / 5; i5++) { int i1 = m - i50 * 50 - i25 * 25 - i10 * 10 - i5 * 5; if (i1 >= 0 && i1 + i5 + i10 + i25 + i50 <= 100) { dp[m]++; } } } } } } } int main() { int money; change(); while (cin >> money) { cout << dp[money] << endl; } }
标签:int bsp mon orm desc pad types money others
原文地址:http://www.cnblogs.com/theskulls/p/6057377.html