#include<stdio.h>
#include<string.h>
int dp[35000];
int main()
{
memset(dp,0,sizeof(dp));
dp[0] = 1;
for(int i = 1; i <= 3; i++)
{
for(int j = i; j <= 32768; j++)
dp[j] =dp[j-i] +dp[j];
}
int n;
while(~scanf("%d",&n))
{
printf("%d\n",dp[n]);
}
return 0;
}
SDUT-oj -2777-小P的故事——神奇的换零钱
最新推荐文章于 2022-10-17 13:04:13 发布
本文通过一个具体的程序实现展示了如何使用动态规划解决一类计数问题。程序采用C语言编写,利用了动态规划的思想,通过迭代的方式计算出特定数值的所有组合方式数量。
7623

被折叠的 条评论
为什么被折叠?



