解题思路:
注意事项:
参考代码:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); int num=scanner.nextInt();//数量 int wiegth=scanner.nextInt();//背包大小 int[] v=new int[num+1];//每件物品的价值 int[] w=new int[num+1];//每件物品的重量 int[][] dp=new int[num+1][wiegth+1]; for (int i = 1; i <= num; i++) { w[i]=scanner.nextInt(); v[i]=scanner.nextInt(); } for (int i = 1; i <= num; i++) { for (int j = 1; j <= wiegth; j++) { if (j< w[i]) { dp[i][j]=dp[i-1][j]; }else { dp[i][j]=Math.max(dp[i-1][j], dp[i-1][j-w[i]]+v[i]); } } } System.out.println(dp[num][wiegth]); } }
0.0分
2 人评分
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:459 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:449 |
C语言训练-列出最简真分数序列* (C语言代码)浏览:603 |
WU-整除问题 (C++代码)浏览:611 |
【亲和数】 (C语言代码)浏览:597 |
星期判断机 (C语言代码)浏览:859 |
2004年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:324 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:441 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:756 |
拆分位数 (C语言代码)浏览:514 |