求一.NET算术算法.欢迎朋友们都进来讨论讨论.

求一个NET算术算法,要求在N个数字中,对二个或多个数字做任意组合,使每个组合的值大于99且与99尽量相近,从而产生最多符合条件的组合。

例如有数字:30,70,55,60 四个数字,则我们可以直观的看出,30+70组合,55与60组合是最佳组合,产生了两组符合条件(值大于等于99)的组合。其他组合方式则只能产生一组。

但当有N个数字的时候,例如20个数值,怎么处理呢~?

 

 

举个例子,有如下数值:
11,14,26,28,35,48,56,70,75,105,208,258
要求组合出最多组大于或等于99的组合,每个数字只能使用一次.

 

与背包算法有点类似,但背包算法是求一个包放入最多的物件.这里是求最多的组合.

posted @ 2010-08-11 11:04  soleds  阅读(309)  评论(1)    收藏  举报