import java.util.Scanner; public class zroe背包 { public static void main(String[] args){ Scanner sc=new Scanner(System.in); int n=sc.nextInt();//物品 int m=sc.nextInt();//容量 int[] n1=new int[n+1]; int[] m1=new int[n+1]; for (int i = 1; i <= n; i++) { n1[i]=sc.nextInt(); m1[i]=sc.nextInt();//容量 } int[][] w=new int[n+1][m+1]; for (int i = 1; i <= n ; i++) { for (int j = 1; j <= m; j++) { if (j<n1[i]) { w[i][j]=w[i-1][j]; } else { w[i][j]=Math.max(w[i-1][j],w[i-1][j-n1[i]]+m1[i]); } } } System.out.println(w[n][m]); } }
解题思路:
注意事项:
参考代码:
0.0分
1 人评分
【金明的预算方案】 (C++代码)浏览:873 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:672 |
蚂蚁感冒 (C语言代码)浏览:1408 |
C二级辅导-求偶数和 (C语言代码)浏览:707 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:594 |
A+B for Input-Output Practice (II) (C语言代码)浏览:622 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:669 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1359 |
众数问题 (C语言代码)浏览:659 |
C二级辅导-阶乘数列 (C语言代码)浏览:1831 |