LCR189.设计机械累加器
链接:LCR189.设计机械累加器
难度:Medium
标签:位运算、递归、脑筋急转弯
简介:求 1+2+...+n ,要求不能使用乘除法、for、while、if、else、switch、case 等关键字及条件判断语句(A?B:C)。
题解 1 - typescript
- 编辑时间:2020-06-02
- 执行用时:56ms
- 内存消耗:32.2MB
- 编程语言:typescript
- 解法介绍:利用等差数列直接求和。
var sumNums = function (n: number): number {
return ((1 + n) * n) / 2;
};
题解 2 - typescript
- 编辑时间:2020-06-02
- 执行用时:80ms
- 内存消耗:34.7MB
- 编程语言:typescript
- 解法介绍:递归求和。
var sumNums = function (n: number): number {
n && (n += sumNums(n - 1));
return n;
};
题解 3 - typescript
- 编辑时间:2020-06-02
- 执行用时:64ms
- 内存消耗:34.9MB
- 编程语言:typescript
- 解法介绍:递归求和。
var sumNums = function (n: number): number {
const c = (num: number, count: number): number => (count === 1 ? num : num + c(num, count - 1));
return c(n, n + 1) >> 1;
};