问题描述
线性规划是一类问题。目标函数为特定变量的线性函数,约束是这些变量的线性不等式(standard form)或等式(slack form),目的是求目标函数的最大值或最小值。这类动态规划是平时比较常见的一类动态规划问题。
假设公司出售一段长度为i英寸的钢条的价格为Pi(i = 1, 2, …单位:美元),下面给出了价格表样例:
切割钢条的问题是这样的:给定一段长度为n英寸的钢条和一个价格表Pi,求切割方案,使得销售收益Rn最大。
当然,如果长度为n英寸的钢条价格Pn足够大,最优解可能就是完全不需要切割。
解法
我们可以把他分解成两个子问题,然后两个子问题的最优解相加,再比较所有相加的和里选出最优的。每个子问题也可以往下继续分成两个子问题,层层分下去。比如我现在长度为5,那么就可以分成1+4、2+3。1+4里面的4又可以划分子问题,分成1+3、2+2、依此循环下去求出每个子问题的最优解后,与原来本数字的价格比较,谁更大要谁,那么总问题也就解决了
动规表达式:
max[n]=price[n]; (n=0)
max[n]