Voyz's Studio.

LeetCode算法笔记--分式化简

字数统计: 162阅读时长: 1 min
2020/09/21 Share

LeetCode算法笔记–Day12

LCP 02. 分式化简

题目:

有一个同学在学习分式。他需要将一个连分数化成最简分数,你能帮助他吗?

fraction_example_1.jpg

示例1:
cont = [3, 2, 0, 2]
输出: [13, 4]
解释:原连分数等价于3 + (1 / (2 + (1 / (0 + 1 / 2))))。注意[26, 8], [-13, -4]都不是正确答案。

示例2:
cont = [0, 0, 3]
输出: [3, 1]
解释:如果答案是整数,令分母为1即可。

我的解答:
1
2
3
4
5
6
7
8
9
10
11
12
/**
* @param {number[]} cont
* @return {number[]}
*/
function fraction(cont) {
let up = 1, down = cont[cont.length - 1];
for (var i = cont.length - 2; i >= 0; --i) {
up += cont[i] * down;
[up, down] = [down, up];
}
return [down, up];
}
CATALOG
  1. 1. LeetCode算法笔记–Day12
  2. 2. LCP 02. 分式化简
    1. 2.0.0.0.1. 题目:
    2. 2.0.0.0.2. 我的解答: