背包算法
来源:互联网 发布:移动网络电视哪些付费 编辑:程序博客网 时间:2024/06/07 00:54
public class PackageProblem { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int totalTime = scanner.nextInt(); int amount = scanner.nextInt(); int[] time = new int[amount]; int[] value = new int[amount]; for (int i = 0; i < amount; i++) { time[i] = scanner.nextInt(); value[i] = scanner.nextInt(); } int[][] arr = new int[amount+1][totalTime+1]; for (int j = 0; j <= totalTime; j++){ for (int i = 0; i <= amount; i++){ if(i == 0 || j==0){ arr[i][j] = 0; }else{ if(time[i-1] > j){ arr[i][j] = arr[i-1][j]; }else{ arr[i][j] = Math.max(arr[i-1][j], value[i-1] + arr[i-1][j-time[i-1]]); } } } } System.out.println(arr[amount][totalTime]); scanner.close(); }}
思路:动态规划,背包能装的重量从1开始慢慢增加,每个重量下装的物品,一件一件往里放。每次选取最优价值。
0 0
- 背包算法
- 背包算法
- 背包算法
- 背包算法
- 背包算法
- 背包算法
- 背包算法
- 背包算法
- 背包算法
- 背包问题的算法
- 递归算法 背包问题
- 背包的递归算法
- “背包问题”的算法
- 背包问题的算法
- 背包问题的算法
- 背包问题的算法
- 背包问题的算法
- 背包问题的算法
- 非常有趣的动态规划介绍
- 同余运算及其基本性质(证明)
- Jquery一些有用的但是不是经常使用的方法和属性
- Expandable Table的Demo
- 如何改变讨好型人格?修
- 背包算法
- 2016太原网络营销师郭文军教你如何玩SEO站群?
- Android调用系统内部功能错误
- jsp页面中文乱码
- GNU Tools
- Oracle OS Watcher 工具 使用详解
- [HYSBZ\BZOJ2818][CQBZOJ2525]Gcd(最大公因数)
- 读后感
- 学习Matlab比较好的网站整理