简单背包 Time Limit:1000MSMemory Limit:32768KB64bit IO Format:%I64d %I64u Submit Status Description 在一个国家仅有1分,2分,3分硬币,将钱N兑换成硬币有很多种兑法。请你编程序计算出共有多少种兑法。
简单背包
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Submit Status
Description
在一个国家仅有1分,2分,3分硬币,将钱N兑换成硬币有很多种兑法。请你编程序计算出共有多少种兑法。
Input
每行只有一个正整数N,N小于32768。
Output
对应每个输入,输出兑换方法数。
Sample Input
2934 12553
Sample Output
718831 13137761
#include<stdio.h>
int dp[35001];
int main()
{
int i,j;
int n;
dp[0]=1;
for(i=1; i<=3; i++)
{
for(j=i; j<=35000; j++)
{
dp[j] = dp[j] + dp[j-i];
}
}
while(scanf("%d",&n)!=EOF)
{
printf("%d\n",dp[n]);
}
return 0;
}