排列组合问题请教各位

就是现在有这样一个问题,假如有100,72,50,36,27cm的柱子,让它自己组合排列,安装一定高度,高度是随机给的,可以给1米5,3米6,10米7,任意给。然后目的就是让它自己组合,达到组合后的高度距离给出的高度最近且不能超过给出的高度。

遍历啊,双for嵌套,里面的是外面的+1,然后abs()判断就好