这个算法,俺是这样认为的,题目其实是要求一次能量出0-29之间的任意整数长度(否则量几次就没啥难度了,而且结果N多。
刻度0是尺子一端,刻度29是另一端,把尺子上刻7个刻度,等于把尺子分成8段,这8段的和
是29。
关键是下面这个条件,求这8段的长度和摆放次序,要求是8段中任意1...n(n<=8) 的顺序求和能满足其值是1 2 3 4 5 ......29, 然后根据8段长度和摆放位置可以计算出在尺子哪7个位置刻刻度。
楼上光求组合是不行的,还需要排列,因为尺子是整体,不能任意取段出来组合出所需值,必须是几个连续数的和要等于所要求结果。
算法可以考虑穷举和回朔。
数据存储结构可以使用数组