[51nod 1201]整数划分
来源:互联网 发布:机械联结烙印矩阵多贵 编辑:程序博客网 时间:2024/05/23 18:33
题目大意
把n分成若干个不同正整数求方案数。
因确实挺
每一种方案都可以由一种方式得到:初始只有一个1。
每一次把所有数加x(x为正整数),然后可以添加一个1。
于是用dp表示就是f[i,j]表示有i个数和为j。
那么根据上诉规则有递推式f[i,j]=f[i,j-i]+f[i-1,j-i]
最多会选多少个数?容易计算是根号级别的。
#include<cstdio>#include<algorithm>#define fo(i,a,b) for(i=a;i<=b;i++)using namespace std;const int maxn=50000+10,mo=1000000007;int f[360][maxn];int i,j,k,l,t,n,m,ans;int main(){ scanf("%d",&n); f[1][1]=1; fo(i,1,350) fo(j,max(i,2),n) f[i][j]=(f[i-1][j-i]+f[i][j-i])%mo; ans=0; fo(i,1,350) (ans+=f[i][n])%=mo; printf("%d\n",ans);}
0 0
- [51nod 1201]整数划分
- 51nod 1201 整数划分
- 51nod-1201 整数划分
- 51Nod-1201-整数划分
- 51nod 1201 整数划分
- 【51Nod 1201】 整数划分
- 【51nod 1201】 整数划分
- 51Nod 1201 整数划分
- 51NOD 1201 整数划分
- 整数划分 51Nod
- [DP 数论] 51Nod 1201 整数划分
- 51nod 1201 整数划分 dp
- 51nod 1201 整数划分(dp)
- 【dp】51nod 1201 整数划分
- 51 nod 1201 整数划分(dp)
- 51nod 1201[整数划分] 1259[整数划分V2] 1597 [有限背包计数问题]
- 51nod 1201 整数划分(锻炼思维的好题)
- 51nod 1201:整数划分 超级好的DP题目
- Irrlicht学习笔记(8)--SpecialFX
- swiper的基础使用(十八)
- visual studio 开发的MFC程序打包
- 理解ThreadLocal
- IOS常用宏定义
- [51nod 1201]整数划分
- 并行程序设计模型
- C++的IO库常见错误
- Spring事务异常回滚,捕获异常不抛出就不会回滚
- 知识点总结
- day_05_pickel 和 json
- swiper的基础使用(十九)
- VM虚拟机----安装虚拟机时出现failed to create the requested registry key
- leetcode No24. Swap Nodes in Pairs