跳到主要内容

面试题16.11.跳水板

链接:面试题16.11.跳水板
难度:Easy
标签:数组、数学
简介:你正在使用一堆木板建造跳水板。有两种类型的木板,其中长度较短的木板长度为 shorter,长度较长的木板长度为 longer。你必须正好使用 k 块木板。编写一个方法,生成跳水板所有可能的长度。

题解 1 - typescript

  • 编辑时间:2020-07-08
  • 执行用时:172ms
  • 内存消耗:48.8MB
  • 编程语言:typescript
  • 解法介绍:遍历依次增加和减少长度。
function divingBoard(shorter: number, longer: number, k: number): number[] {
if (k === 0) return [];
const ans = new Set<number>();
let l1 = k,
l2 = 0;
while (l1 !== -1) ans.add(l1-- * shorter + l2++ * longer);
return [...ans];
}