题解 | #称砝码#

称砝码

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 arr = [];
    while ((line = await readline())) {
        arr.push(line);
    }
    // console.log('arr====', arr)
    arr.shift()
    const weightArr = arr.shift().split(" "); // 重量数组
    const counts = arr.shift().split(" "); // 数量数组
    let plantArr = []
    for (let i = 0; i < weightArr.length; i++) {
        for (let j = 0; j < counts[i]; j++) {
            plantArr.push(weightArr[i])
        }
    }


    const set = new Set()
    set.add(0)
    // console.log('plantArr====', plantArr)
    for (let i = 0; i < plantArr.length; i++) {
        const arr = [...set]
        arr.forEach(v => {
            set.add(Number(v) + Number(plantArr[i]))
        })
    }
    console.log(set.size)
})();

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务