智商吧 关注:203,444贴子:1,885,659

回复:一道汽车问题?(看来简单,最佳答案比较难)

只看楼主收藏回复

我已经演绎了一遍357的算法,可能写得太潦草,估计没人看得懂!
我这里再具体写一下,对错大家探讨一下.
首先,先确定一下,4桶满桶(包括车的油箱满即3+1)的最大行程:
先运一桶油到66.66公里处,把桶放下,注意此时桶内油还剩66.66.(因为车最多载200,分三份,2份供车自己来回,一份66.66的桶留着为下一次用);
第二次车装第3桶油(200)出发,到66.66公里处,加满还是200满载,再行驶200公里.
由此,有4桶(3+1)的情况,最大行程是266.66.这个没意思吧?如果这个还想不通,怎么下面也不要看了.



IP属地:上海49楼2010-11-01 22:04
回复


    IP属地:上海50楼2010-11-01 23:00
    回复
      2026-03-03 03:37:59
      广告
      不感兴趣
      开通SVIP免广告
      上一图片,可点击放大。由上可知,11桶油最大行程为354.48
      但是家里还剩24.44的油未用,不要浪费了。再加上24.44的油,因此总行程增加至354.48+3.49=357.97,这部分24.44的推导过程就不说了,大家根据我的思路,24.44的油可不可以增加3.49公里的路,其实24.44这部分我也没把握,希望大家指正。


      IP属地:上海51楼2010-11-01 23:06
      回复
        思路很好,但是貌似最后3桶油运不到E点了


        52楼2010-11-01 23:48
        回复
          此题有趣。开拓思维,锻炼智力!
          建议设为精华帖。


          IP属地:四川53楼2010-11-01 23:52
          回复
            最后不是3桶,而是4桶。完全可以运到E点,因为根本不用自己载的油,而是用先前放在ABCDE油桶里的油。


            IP属地:上海54楼2010-11-02 00:19
            回复
              回复:54楼
              操作一下看看


              55楼2010-11-02 00:21
              回复
                详细步骤如图:(点击放大)


                IP属地:上海56楼2010-11-02 01:20
                回复
                  2026-03-03 03:31:59
                  广告
                  不感兴趣
                  开通SVIP免广告
                  。。很明显没注意看我43楼的最小限制
                  4X6+2X5≥200
                  6X6+4X5+2X4≥400
                  8X6+6X5+4X4+2X3≥600
                  10X6+8X5+6X4+4X3+2X2≥800
                  11X6+9X5+7X4+5X3+3X2≥900
                  按照你的流程 是运不出去油的
                  比如你第二次出去 从B点回来以后关于油的分布
                  A:100-200/9
                  B:100
                  用掉:400/11+200/9
                  原地的油800+600/11 那么后面4趟你最多运出去800 还剩50+ 而不是24.44
                  到了第三次 第四次之后 这种办法在原地剩下的油将会更多 因为你的目标是尽量把油留在外面(这个不难理解吧) 那么路过ABCD时候只会加足够跑到下一加油点的油 那么ABCD会剩很多 而用掉的油是固定的 总量1100 那么原地的油就更多 B点回来就多出来50+ C点呢?D点呢?
                  


                  IP属地:上海57楼2010-11-02 09:48
                  回复
                    回复:50楼
                    总油量1100 你算看看 不够的
                    关于345.45 我详细点说一下
                    最后一次不返回的跑 最佳方案必定使其为200 否则前面一定浪费油了
                    跑200之前 那一定就是有返回的跑 返回次数越少 用于返回的油越少 所以若方案最佳 倒数第二次返回跑一定只返回一次 来回3次用油150 加上最后出发的200一共350
                    以此类推倒数第三次应剩600
                    倒数第四次应剩1150
                    但是此处只有1100 至少要送5趟来回11次 这11趟当然越短越好 最短(1100-600)/11 然后剩600可跑300 答案345.45
                    在此再说明一下 当来回次数一多 限制条件也就会越多 因为你要保证你出去的“每”一趟回来之后 用掉的油要足够多 多到原地剩下的油在后面的规定次数内带得出去 而当你送出去的距离小于50的时候 越到后面越难保证原地的油带得出去 所以上面的100/11 100/9 100/7之类 远小于50 所以原地的油必定会越积越多
                    所以当总油量为200整倍数时 最佳方案肯定是50 50的跑
                    总油量为200n+x时 方案最佳时 第一次跑的距离将小于50 但是不能忘了有最小限制


                    IP属地:上海58楼2010-11-02 11:03
                    回复
                      还有为什么200后面是350 在后面是600 1150
                      这只是前面一次送完后 剩下的“最佳”油量 而其实总量200-400方案类似 400-600时方案类似 以此类推
                      但是 比如说有500的油 第一次要来回5趟 跑完5趟剩下的油为0~375 其中剩下350时 这500油可跑路程最长
                      1100也是这样 跑完11趟剩下的油也可以更多 也可以更少 但是剩下600 这1100油跑的总路程必定最长(当然剩下600 第二次要剩350 第三次剩200 总路程才最长)


                      IP属地:上海59楼2010-11-02 11:14
                      回复
                        回复:58楼
                        最后两句脑抽了 请无视。。


                        IP属地:上海60楼2010-11-02 11:15
                        回复
                          回复:60楼
                          似乎朋友没理解我的意思. 那么把这题简单化,4桶油最多可以开多远?如果这个可以算出来,下来才可以继续!


                          IP属地:上海61楼2010-11-02 11:22
                          回复
                            回复:58楼
                            你那个方法,思维很缜密,算法也是正确的. 我也试着算过,但是不是最大化的值


                            IP属地:上海62楼2010-11-02 11:58
                            回复