题目:
你是山西的一个煤老板,你在矿区开采了有3000吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车,这个火车最多只能装1000吨煤,且其能耗比较大——每一公里需要耗一吨煤。请问,作为一个懂编程的煤老板的你,你会怎么运送才能运最多的煤到集市?
思考:画个草图。
思路一:没解,1000公里,火车上限也只能拉1000吨,到地也没了。第一反应。
思路二:只要思考就是好事,1000公里3000吨煤。
情况一,第一次拉一千,到目的地后没有剩余,不行。
情况二,拉一千走500公里再回来,那更惨,最多也就走500公里。
情况三,拉一千走400,在400公里处放下200,再回来拉一千,再放200,但最后还是不剩余。情况四,问题就在于在什么位置要放下多少,再回去拉,才有剩余。可 以再想在300公里的位置再放,那最后剩余只有一百,如果走200,剩余400 。(到这里已经不错了)再往下分析,就会意识到中间剩余的数量会最多,就晃250 了,剩余500,应该是最多的了。
大家一定要思考,画出每一种情况的一个草图,更容易理解。(呵,我的分析能力不是很强,也就只有用笨的方法了。。)