题解 | #称砝码#

称砝码

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

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int kinds = Integer.parseInt(sc.nextLine());
        String[] weightArr = sc.nextLine().split(" ");
        String[] numArr = sc.nextLine().split(" ");

        Set<Integer> set = new HashSet<>();
        set.add(0);
        for(int i = 0; i < weightArr.length;i ++){

            for(int j = 0; j < Integer.parseInt(numArr[i]); j ++) {
                Set<Integer> tmpSet = new HashSet<>();
                Iterator<Integer> iterator = set.iterator();
                while (iterator.hasNext()) {
                    tmpSet.add(iterator.next() + Integer.parseInt(weightArr[i]));
                }
                set.addAll(tmpSet);
            }
        }
        System.out.println(set.size());
    }
}

全部评论

相关推荐

野猪不是猪🐗:😇:恭喜你以出色的表现成为xxx的一员 😨:您以进入本公司人才库 实际点开:您愿望单中的xxx正在特卖!
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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