算法导论 钢条切割问题
2017-05-20 21:15
274 查看
#include <stdio.h> #include <limits.h> int p[11]={0,1,5,8,9,10,17,17,20,24,30}; int r[11],s[11]; int max(int a,int b) { return a>=b?a:b; } void bottomUpCutRod(int n) { r[0]=0; int q; for(int i=1;i<=n;i++) { q=INT_MIN; for(int j=1;j<=i;j++) { if(q<p[j]+r[i-j]) { s[i]=j; q=p[j]+r[i-j]; } } r[i]=q; } } void printS(int n) { while(n>0) { printf("%d ",s ); n-=s ; } printf("\n"); } int main() { bottomUpCutRod(7); printf("%d\n",r[7]); printS(7); getchar(); }
相关文章推荐
- 算法导论例程——切割钢条问题(动态规划)
- 算法导论第十五章之钢条切割问题(自顶向下法)
- 算法导论 动态规划 钢条切割问题的自底向上解法
- 算法导论第十五章之钢条切割问题(自底向上版本)
- 算法导论---DP之钢条切割问题
- 算法导论之最优解算法--钢条切割问题扩展--流量充值问题
- 算法导论笔记 动态规划 -- 钢条切割问题 思路
- 算法导论钢条切割问题
- 算法导论-第15章-动态规划:钢条切割问题自底向下方法C++实现
- 算法实践篇-钢条切割问题-动态规划
- 算法导论15章 动态规划 之 钢条切割
- 动态规划算法 - 钢条切割问题
- 钢条切割问题
- 【算法导论学习-27】动态规划经典问题01:钢条切割的最大收益
- 动态规划解决钢条切割问题
- 算法导论 15.1 钢条切割
- 算法导论---------动态规划之钢条切割
- 动态规划 钢条切割问题
- 动态规划问题之钢条切割
- 算法导论-第15章-动态规划-15.1 钢条切割问题