天天看點

運白菜問題

          1、一個商人和一匹馬要運送3000棵白菜到1000裡外的小鎮,馬每次最多能運1000棵白菜,而且每走一裡路要吃掉一棵白菜,問商人最多能運送多少白菜到目的地(商人自己不運送白菜)

          思路:一共有3000課白菜,來1公裡運一次,每次運1000棵;

                     将3000棵都運到1公裡處時要消耗5棵白菜;

                     設5x < = 1000   x = 200  即将3000棵白菜都運到200公裡時,此時消耗了1000棵白菜,剩下2000棵白菜;接下來繼續運;

                      此時每運1公裡需要消耗3棵白菜;

                     設3y <=1000  y= 333,   即又走了333公裡,消耗了999棵白菜,剩下1001棵白菜,丢掉1棵白菜,就剩下1000,直接運送到終點即可

                      最後剩下  1000 - (1000 - 200 - 333)= 533   

                   最終運送到終點就剩下533課白菜了。

         主要用到動态的資料變化來換得最少的消耗!!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

繼續閱讀