动态规划--01背包-详解。

01 背包问题

题目描述:
在这里插入图片描述
题目分析:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
         // TODO Auto-generated method stub
          Scanner in = new Scanner(System.in);
	  int n = in.nextInt();
	  int v = in.nextInt();
	  int []arrv = new int [n+1];
	  int []arrw = new int [n+1];
	  for(int i=1;i<=n;i++) {
	      arrv[i]=in.nextInt();
	      arrw[i]=in.nextInt();
           }
	  int [][] re = new int [n+1][v+1];
	  for(int i=1;i<=n;i++) {
   	       for(int j=1;j<=v;j++) {
		   // not select i goods
		   re[i][j]=re[i-1][j];
		   // select i goods 
	           if(j>=arrv[i]) {
	               re[i][j]=Math.max(re[i-1][j-arrv[i]]+arrw[i],re[i][j] );
	           }
	       }
           }
 	   System.out.println(re[n][v]);	  
     }
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发布了53 篇原创文章 · 获赞 8 · 访问量 4047

猜你喜欢

转载自blog.csdn.net/weixin_44107920/article/details/104110659