我想知道应该使用什么策略来解决以下问题。
问题陈述
有 2 个煤矿,每个煤矿雇用一组矿工。我们的工作是将食品运送到矿山。每次一船食物到达他们的矿场,矿工们就会生产一些煤炭。食品运输分为三种类型:肉、鱼和面包。
每次有新货物到达他们的矿山时,他们都会考虑新货物和前两批货物(如果没有那么多,则更少),然后:
- 如果所有货物的类型相同,它们将生产一单位煤
- 如果货物中有两种不同类型的食物,它们将生产两个单位的煤。
- 如果有三种不同类型的食物,他们将生产三个单位的煤。
食品运输的类型和发送顺序是事先知道的。
输入
您会按照发送顺序获得食品运输的类型。
目标
目标是最大化煤炭产量。这是通过确定哪些货物应该去哪个矿山来完成的。2 个矿场不一定要接收相同数量的货物(实际上,允许将所有货物发送到一个矿场)。
例子
对于装运订单:MBMFFB,预期产量(最大可能的煤炭产量)为 12。