题目描述
某公司有一批货物,系了 2 个轮船进行运输。每条轮船上可以运输不同容量的货物。由于 2 个轮船的发船时间不一样,同一个货物通过不同的轮船运输到终点后,利润也是不一样的,现在需要根据不同轮船的容量、货物的容量以及在不同轮船上进行运输的利润有效地分配货物,从而达到货物价值最大化。每个货物只有 1 件。 输入: 第一行输入为 A B M,A 代表轮船 A 的容量,B 代表轮船 B 的容量,M 代表货物的个数。 之后 M 行分别代表每个货物的容量、使用轮船 A 运输的利润、使用轮船 B 运输的利润。 输出: 最大利润。 例子: 输入: 5 6 4 4 3 2 3 1 4 2 2 4 2 3 3 输出:11 解释:轮船 A 运输货物 1 或者 4,利润 3;轮船 B 运输货物 2 和 3,利润 8;所以最大的利润是 11。
思路
- 首先想到的是 0-1 背包,只不过这里有两个背包, 在遍历物品时,可以放在背包 A 或者背包 B, 也可以不放入任何背包.