题目
- 积木若干,宽高一致,长不一
- 用积木叠墙,每层可以放1个或两个积木,最后要保证每层积木总长度相同
- 若必须用完积木,问叠成的墙最多多少层
输入输出描述
- 输入:一行由空格分隔的正整数表示积木的长度
- 输出:一个数字(为墙的最大层数),如果无法按要求叠,则输出-1
思路
- 找积木总长度与每层长度、层高之间的关系(每层长度*层高=积木总长度)
- 总长度很好算,层高是我们最终要输出的结果
- 那每层长度可以算吗?很明显也是有一个区间范围的:
[积木中最长的,积木中最长的+积木中最短的]
代码
function stackBlock(str) {
let blockArr = str