题解 | #称砝码#

称砝码

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

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
    let lines = [];
    while ((line = await readline())) {
        lines.push(line);
        if (lines.length == 3) {
            var num = Number(lines[0]);
            var weights = lines[1].split(" ");
            var numbers = lines[2].split(" ");
            // console.log(num);
            // console.log(weights);
            // console.log(numbers);

            var set = new Set([0]);
            for (var i = 0; i < weights.length; i++) {
                let temp = [...set];
                // console.log('当前number是' + numbers[i]);
                for (var j = 1; j <= numbers[i]; j++) {
                    temp.forEach((item) => {
                        set.add(item + j * weights[i]);
                    });
                }
            }
            console.log(set.size);
        }
    }
})();

全部评论

相关推荐

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

创作者周榜

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