题解 | #查找组成一个偶数最接近的两个素数#

查找组成一个偶数最接近的两个素数

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

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

void (async function () {
    // Write your code here
    while ((line = await readline())) {
        let num = Number(line);
        let map = new Map();
        for (let i = 1; i < num; i++) {
            let number = num - i;
            if (isSushu(number) && isSushu(i)) {
                map.set(i, number);
            }
        }
        let n1;
        let n2;
        let chazhi = Number.MAX_VALUE;
        map.forEach((num1, num2) => {
            if (Math.abs(num2 - num1) < chazhi) {
                chazhi = Math.abs(num2 - num1);
                n1 = num1;
                n2 = num2;
            }
        });
        if (n2 > n1) {
            console.log(n1);
            console.log(n2);
        } else {
            console.log(n2);
            console.log(n1);
        }
    }
})();

function isSushu(n) {
    for (let i = 2; i < n; i++) {
        if (n % i == 0) {
            return false;
        }
    }
    return true;
}

全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务