问题描述:有一个容量为m的背包,还有一堆可以装在背包里的物品i个,没个物品有对应的重量和价格,求背包能装下的最大价值是多少?
对于次问题我们用两种方式解决1.暴力求解也叫穷举法,看哪种情况下的价值最大,每个问题的穷举法都不太一样,背包问题光看答案都看了好久,不知道别的童鞋什么情况,是我太笨了吗?想明白之后,感觉难点是得到其中一种情况下的对应的物品是否有,上代码。。。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 练习
{
class Program
{
static void Main(string[] args)
{
int m;
int[] w = {0,3,4,5 };
int[] p = {0,4,5,6 };
Console.WriteLine(MaxPrice(10,w.Length - 1,w,p));
Console.ReadKey();
}
public static int MaxPrice(int m,int[] w, int[] p)
{
int i = w.Length;//当前物品的个数