前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布

hdu1028

作者头像
@坤的
发布2018-06-04 11:01:55
2560
发布2018-06-04 11:01:55
举报
文章被收录于专栏:*坤的Blog*坤的Blog

#include<stdio.h> #include<string.h> const int MAXN=130; int dp[MAXN][MAXN]; //dp[i][j]表示 i 表示成最大的数不超过 j 的方法数 int calc(int n,int m) { if(dp[n][m]!=-1) return dp[n][m]; if(n<1||m<1) return dp[n][m]=0; if(n==1||m==1) return dp[n][m]=1; if(n<m) return dp[n][m]=calc(n,n); if(n==m) return dp[n][m]=calc(n,m-1)+1; return dp[n][m]=calc(n,m-1)+calc(n-m,m); } int main() { int n; memset(dp,-1,sizeof(dp)); while(scanf("%d",&n)!=EOF) printf("%d\n",calc(n,n)); return 0; }

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-01-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档