钢条切割问题
ZxwLx公司购买长钢条,将其切割为短钢条出售。切割工序本身没有成本支出。公司管理层希望知道最佳的切割方案。假定我们知道Serling公司出售一段长为i英寸的钢条的价格为pi(i=1,2,…,单位为美元)。钢条的长度均为整英寸。下图给出了一个价格表的样例。
钢条切割问题是这样的:给定一段长度为n英寸的钢条和一个价格表pi(i=1,2,…n),求切割钢条方案,使得销售收益rn最大。注意,如果长度为n英寸的钢条的价格pn足够大,最优解可能就是完全不需要切割。
第一种(自顶向下的递归):
using System;
namespace 钢条切割问题___递归实现
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("钢条的长度为:");
int n = Convert.ToInt32(Console.ReadLine());
int[] p = { 0, 1, 5, 8, 9, 10, 17, 17, 20, 24, 30 };//索引代表 钢条的长度,值代表价格
Console.WriteLine("最大利润为:");
Console.WriteLine(UpDown(n, p));
Console.ReadKey();
}
public static int Up