题解 | #将真分数分解为埃及分数#

将真分数分解为埃及分数

https://www.nowcoder.com/practice/e0480b2c6aa24bfba0935ffcca3ccb7b

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void async function () {
    while(line = await readline()){
        let [numerator,denominator] = line.split("/").map(Number);
        let res = [];
        while(numerator > 1){
            const bottom = Math.ceil(denominator/numerator);
            res.push(bottom);
            numerator = bottom*numerator - denominator; 
            denominator *= bottom;                 
        }
        if(numerator === 1) res.push(denominator);
        console.log(res.map(item => "1/"+item).join("+"));
    }    
}()

全部评论

相关推荐

评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务