首页 新闻 会员 周边

用Java实现分油问题

0
悬赏园豆:30 [待解决问题]

现有一只装满12斤油的瓶子和三只分别装10斤、6斤和3斤油的空瓶,如何才能将这12斤油分成三等份。如果4个瓶子分别要求装5斤、3斤、2斤、2斤,又能否实现?用Java代码怎么实现算法或者python。

还是牛的主页 还是牛 | 初学一级 | 园豆:172
提问于:2017-04-29 21:35
< >
分享
所有回答(2)
-1

3斤瓶是空的用便捷的方法分出5斤酒是吧,3斤瓶剩2斤,10斤瓶剩1斤。分次三次用3斤装入7斤瓶。然后7斤瓶倒回10斤瓶,7斤瓶就是5斤了。3斤瓶倒入7斤瓶,7斤瓶剩2斤,这样,10斤瓶有8斤,再装满个3斤瓶倒入7斤瓶

上善¤若水 | 园豆:235 (菜鸟二级) | 2017-05-02 14:05
-1

三等分:

1. 先装满10斤,用这10斤分别装满6斤和3斤的瓶子,然后把6斤和3斤的到回12斤瓶,10斤瓶子里剩下的1斤到在6斤的瓶子里。按瓶子的容量大小排序是12、10、6、3,每个瓶子里油的重量分别是11、0、1、0。

2. 再装满10斤,用这10斤装满3斤的瓶子,此时每个瓶子油的重量分别是1、7、1、3

3. 将3斤瓶子里的油,倒入6斤的瓶子;用10斤瓶里剩下的7斤再次装满3斤瓶,再将这3斤装到12斤瓶中。此时除了3斤的瓶子,其他瓶子都是4斤油了。

安静的下雪天 | 园豆:274 (菜鸟二级) | 2017-05-02 14:58

还想请教一下解决问题的思路和方法。

支持(0) 反对(0) 让我发会呆 | 园豆:2929 (老鸟四级) | 2017-05-02 16:31

@让我发会呆: 

5 3 2 2 这种情况没想出来;

等分这种情况的思路大概是,列出各容器的容量,计算各容量的差值,列出可能的组合的矩阵(每行的和是总量,每列的最大值各容器的容量)。

支持(0) 反对(0) 安静的下雪天 | 园豆:274 (菜鸟二级) | 2017-05-02 17:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册