首页 > 代码库 > SDUTOJ 小P的故事——神奇的换零钱
SDUTOJ 小P的故事——神奇的换零钱
<pre name="code" class="cpp">#include<stdio.h> #include<string.h> int dp[40000]; int main() { int n,i,j,a[3]={1,2,3}; dp[0]=1; for(i=0;i<=2;i++) for(j=a[i];j<=32769;j++) dp[j]=dp[j]+dp[j-a[i]]; while(scanf("%d",&n)!=EOF) { printf("%d\n",dp[n]); } return 0; }//上述是正确代码..
下面是的代码是自己第一次编写的..不过超时..哪位大牛帮我指点下错误啊..没弄懂.. #include<iostream> #include<memory.h> using namespace std; int dp[100000]; int main() { int n,a[3]={1,2,3},i,j; while(cin>>n) { memset(dp,0,sizeof(dp)); dp[0]=1; for(i=0;i<=2;i++) for(j=a[i];j<=n;j++) dp[j]=dp[j]+dp[j-a[i]]; cout<<dp[n]<<endl; } return 0; }
SDUTOJ 小P的故事——神奇的换零钱
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。