hdu-2602 Bone Collector C#_Ex


using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Main { class Program { static void Main(string[] args) { int[,] map = new int[1005, 1005]; int[] Bvalue = https://www.it610.com/article/new int[1005]; int[] Bvolume = new int[1005]; string cin,cin2; string[] sp,sp2; int number, volume; int round = Convert.ToInt32(Console.ReadLine()); while (round-- != 0) { cin = Console.ReadLine(); sp = cin.Split(' '); number = Convert.ToInt32(sp[0]); volume = Convert.ToInt32(sp[1]); cin = Console.ReadLine(); cin2 = Console.ReadLine(); sp = cin.Split(' '); sp2 = cin2.Split(' '); for (int i = 1; i <= number; ++i) { Bvalue[i] = Convert.ToInt32(sp[i - 1]); Bvolume[i] = Convert.ToInt32(sp2[i - 1]); }for (int i = 0; i < 1002; ++i) { map[i, 0] = 0; }for (int i = 1; i <= number; ++i) { for (int j = 0; j <= volume; ++j) //题目默认volume为0时value可以不为0,所以必须j=0开始 { map[i, j] = map[i - 1, j]; if (j >= Bvolume[i]) map[i, j] = map[i - 1, j] > map[i - 1, j - Bvolume[i]] + Bvalue[i] ? map[i - 1, j] : map[i - 1, j - Bvolume[i]] + Bvalue[i]; } } Console.WriteLine(map[number, volume]); } } } }


20200516 2017-03-22 17:18:12 Accepted 2602 187MS 17812K 1811 B C# harrypoirot



【hdu-2602 Bone Collector C#_Ex】

    推荐阅读