数学逻辑:马运白菜

来源:百度知道 编辑:UC知道 时间:2024/07/07 01:25:15
一个商人和一匹马要运送3000棵白菜到1000里外的小镇,马每次最多能运1000棵白菜,而且每走一里路要吃掉一棵白菜,问商人最多能运送多少白菜到目的地(商人自己不运送白菜)

我曾经回答过这个问题,但楼主不满意我的答案。而他选中的答案我不满意。所以我将问题从新提问一遍。谁能给我满意答案?

最多3000棵???
运1000棵半里,中途放下回去再运1000棵半里。。。。慢慢倒腾过去。。。。。。
最多!

能不能这样运呢。3000颗菜,需要往前至少运3次才行,加上中间折返的两次一共是5次,在这五次假设一共走了5x里路,那么只要5x小于等于1000那么运送可视为有效方案,否则放弃此运送。那么根据此点可得 x最大值为200 ,选此方案则所有的菜运送到离出发点200 的地方,白菜数量为 2000 。下一步用同样的方法,一共走3次路,且仍然有 3x小于等于1000 ,x 最大值为 333里。此时离出发点共533里,白菜还有1000颗 。将最后的1000颗白菜一次运至目的地,消耗白菜467颗,最终白菜剩 533颗 。
刚发完答案发现楼上的思路跟我差不多,不过不靠虑往回返的路程,如果是那样的话,按照我的设计方案第一次可以将2000颗白菜运送到333里的地方,第二次可以将1000颗菜再向前运500里,这样最后1000颗菜只需要向前运送167里,我最终可以运送833颗白菜,比楼上的多了不少嘞,嘻嘻……

我不觉得666是答案,我觉得马把菜放下,再回去的过程中还是要走一里路吃一棵菜的,不然回不到目的地就饿死了
所以假设到x里的时候,放下一些再回去,那么2(1000-2x)+1000-x-(1000-x)是运送到的白菜数量,而约束条件是2(1000-2x)+1000-x<=1000
那么x>=400,那么为x最小时候,取400时,运送的白菜最多,是400棵
好像也不对,都怪自己数学建模没有学好
其实,是可以很简单的解出来的,惭愧···

1里1里运,每次1000颗,总共3000颗,运1里吃1颗,也就是说3000颗全部运出1里后被马吃了5颗,这样的话到了200里后就剩下2000颗了,这个时候继续1里1里运,但是现在2000颗全部运出1里后被马吃掉的是3颗,然后再过333里的时候,总共剩下1001颗了,这时扔掉那1颗,直接把最后1000颗送到目的地,所以答案就是1000-(1000-533)=533颗

剩3棵

willjolin520的答案是正确的