用最短的时间做十个面包的方法:
做面团8--12分钟========>发酵20--40分钟========>做面包8--12分钟

解决方案 »

  1.   

    做面团1(8) - 等(8)做面团2(12)[发酵1(20)] - 做面包1(10)做面团3(10)[发酵2(20)] - 做面包2(10)做面团4(10)[发酵3(20)] - 做面包3(10)做面团5(10)[发酵4(20)] - 做面包4(10)做面团6(10)[发酵5(20)] - 做面包5(10)做面团7(10)[发酵6(20)] - 做面包6(10)做面团8(10)[发酵7(20)] - 做面包7(10)做面团9(10)[发酵8(20)] - 做面包8(10)做面团10(10)[发酵9(20)] - 做面包9(12)等(8)[发酵10(20)] - 做面包10(8)用了多久我数不过来了。做面团2和做面包9用了12分钟是为了让你别闭着,  he he .
      

  2.   

    检讨:曾经有一个有很好算法的题目摆在我的面前我没有珍惜,当我用一个很差的方法解决后才后悔莫及,如果上天再给我一次机会,我会对那个题目说:请看下面的解法,理论上已经不可能再优了设只做5个面包,可以按下面分配(每行一个面包)第一个:(8)->(      3  2      )->(8)
    第二个:     (8)->(      3  2      )->(8)
    第三个:          (8)->(      3  2      )->(8)
    第四个:               (8)->(      3  2      )->(8)
    第五个:                    (8)->(      3  2      )->(8)由于做5个面团+5个面包至少要8*5+8*5分钟,而这里只一共只用了这么多分钟,所以不可能再优了。对于所以面包个数为5个倍数的,都可以5个5个一分。所以,做10个面包只要8*20=160分钟就可以了。楼主对这个答案满意吗?
      

  3.   

    楼主,我觉得这个问题吧,它就是一点。那就是让它在发酵的时候不要闲着。因为你说“按所用的时间随意组合”,就是说,8-12分钟,我想做几分钟就做几分钟,不是随机的,可能是10分钟或者11分钟,这就好办了。(傻瓜才做12分钟,我不会都休息4分钟吗?)。所以说,基本上 jellypillar(新型人类) 的意见我是同意的,再补充一点就是,4个一做和6个一做也是可以的,将发酵的时间改为24和40就可以了,那样分别是64和96分钟,加起来也是160,和 jellypillar(新型人类) 是一样的。如果说所用时间是随机的,那这个问题还比较难办,幸好楼主你的要求不是那样的,呼~~~~不知道 ,我罗嗦了这么一堆,楼主有没有听明白?我是明白了
      

  4.   

    采用cpu流水线作业方式最好了。
      

  5.   

    同意 jellypillar(新型人类) , marlboroywp(狼) 的解法,及fsybaby(!报峰语)的说明;
    就是保证手不停的做就OK了,不论多少个一做( 20 <= 8的倍数 <= 40),但前面的时间一定的,只有最后一次人才有空闲下来,所以要总体最短就先 总共的个数 MOD(选做的个数)=0的,本题你说是10个,即选5 . (5个*8=40)且 5个/趟 * 2趟=10个