6049:买书 (完全背包)

【题目描述】

    小明手里有n元钱全部用来买书,书的价格为10元,20元,50元,100元。

    问小明有多少种买书方案?

【题目链接】

    http://noi.openjudge.cn/ch0206/6049/

【代码】

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 int n,i,j;
 4 int dp[1010],a[5]={0,10,20,50,100};
 5 int main()
 6 {
 7     scanf("%d",&n);
 8     for(i=0;i<=n;i+=10) dp[i]=1;
 9     for(i=2;i<=4;i++)
10         for(j=a[i];j<=n;j+=10)
11             dp[j]+=dp[j-a[i]];
12     printf("%d
",dp[n]);
13     return 0;
14 }
原文地址:https://www.cnblogs.com/Willendless/p/9379808.html