有一个关于做优化的问题,是这样的,要求:我们公司生产的产品,一个成品包括25柱,但是客户订货的时候,可以从2柱到24柱之间任意一个数来下单,比如:订4柱的产品200个,订13柱的产品300个等,这样的话,就需要从一个成品中拆出3个4柱和一个13柱来刚好组成25柱一个成品,这样一个成品就不浪费,至于到最后,没有组合完的,就按所剩的订单来拆分了,但最好一个成品中不要浪费掉大于 2柱。
因为每次都要自己手动的算,所以想编一个这样的程序,如果有那位大侠愿意帮忙,那小妹将不甚感激。

解决方案 »

  1.   

    把手工算法转换成程序。
    呵呵!废话。集合的问题。
      

  2.   

    不和那个游戏“24点”是一个样子吗?
    就用多重循环来做吧,得出实现步骤最少的一种方法就行了。
      

  3.   

    一个比较好玩的算法
    能不能把订单的类型说详细一点,如果订单完全没有限制的话,算起来也会很麻烦
      

  4.   

    多谢各位的回复!
    订单的要求就是这样的:
    一张完整的片共有24柱组成,可以将他任意切割成2柱,3柱,4柱…….23柱,用最节省的办法,尽量减少浪费,按定单上的片数和组数完成分割任务,
    订单如下 :
    柱数 组数 合计
    6 50 300
    8 50 400
    10 80 800
    16 30 480这个‘柱数’的取值是从2到24之间,因为一个成品(即一张完整的片)是由 24 柱组成, 这些柱数都是从一个整片上拆下来的,‘组数’可以是任意的。
      整个问题就是一个最优化组合的问题。
      

  5.   

    刚谢过了各位,现在怎么没有人给我回复了呢。