超级难题
有n个已经编号的面,现在要把这些面按指定的面积值t进行分组,每一组面的面积总和不能超过指定值
t,但是当这个面的值大于或等于d时就要单独分为一组。(注,程序是通过编号来读取面积的,可以把
面积和编号放在多维数组中)
示例:
t=200
d=160
编号 面积
1 30
2 110
3 80
4 90
5 20
6 73
7 180
8 80
9 40
10 50
11 170
12 80
按题目要求的结果为:
编号 面积
第一组
1 30
3 80
4 90
第二组
2 110
5 20
6 63
第三组
8 80
9 40
10 50
第四组
7 180
第五组
11 170
第六组(由于80没有组合的对象了,就单独分为一组)
12 80
这个很难做的,不知用什么办法。