dp【划分数】
来源:互联网 发布:中英文在线翻译软件 编辑:程序博客网 时间:2024/05/08 12:00
【dp常用于求解最优问题,各种排列组合的个数,概率,期望之类的运算。】
n的m划分------有n个无区别的物品,划分成不超过m组。划分方法个数。
当m=n时,称作n的划分数
dp[i][j] //j的i划分的总数
分析:
设n=a1+a2+a3+…am.根据0的情况划分成了两种。
若ai>0,{ai-1} 就对应了n-m的m划分。他和n的m划分个数是一样的
若存在ai=0,就对应了n的m-1划分。
dp[i][j]=dp[i][j-i]+dp[i-1][j].
复杂度O(nm)
如:4的3划分:
1+1+2,1+3,2+2,0+4
输出4。
#include <cstdio>#define maxn 505#define MOD %10000int dp[maxn][maxn];int main(){int n,m;scanf("%d%d",&n,&m);dp[0][0]=1; for(int i=1;i<=m;i++){for(int j=0;j<=n;j++){if(j-i>=0){dp[i][j]=(dp[i][j-i]+dp[i-1][j])MOD;}else{dp[i][j]=dp[i-1][j];}}} printf("%d\n",dp[m][n]);return 0;}
0 0
- 划分数(DP)
- 划分数问题 DP
- dp【划分数】
- poj3046 划分数dp
- 划分数dp 小结
- 【划分型DP】数的划分
- nyoj 90 整数划分【dp划分数】
- 数的划分问题 【DP】
- Codevs_P2711 数的划分(DP)
- OpenJudge_P8787 数的划分(DP)
- dp 数划分 动态规划
- DP专题--数的划分
- 数的划分 搜索 ,DP
- 划分数 不超过m组 dp
- [NOIP 2001]数的划分 DP
- 有关计数问题的DP 划分数
- 有关计数问题的DP 划分数
- poj 1664 放苹果 dp+划分数
- LeetCode——019
- 关于Google Chrome 浏览器的一些命令及用法
- LeetCode 232. Implement Queue using Stacks
- nyoj 183 赚钱了 bellmanford
- bootstrap修改默认字体,更换为微软雅黑或其他字体的方法
- dp【划分数】
- 网页前端的异常处理方法、异常处理系统及异常处理服务器
- TCP/IP三次握手与四次挥手
- 找寻路径从根root到节点p的路径函数
- LeetCode #6 ZigZag Conversion C# Solution
- Partitioning Game (SG函数)
- ZOJ 3932 Handshakes
- bfs
- 键盘事件