题解 | #称砝码#,看了别人的才知道可以这么玩,有意思

称砝码

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

import java.util.ArrayList;
import java.util.HashSet;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextInt()) {
            int n = in.nextInt();
            int[] g = new int[n];
            for (int i = 0; i < g.length; i++) {
                g[i] = in.nextInt();
            }
            int[] number = new int[n];
            for (int i = 0; i < number.length; i++) {
                number[i] = in.nextInt();
            }
            HashSet<Integer> set = new HashSet<>();
            set.add(0);
            // 遍历砝码
            for (int i = 0; i < g.length; i++) {
                ArrayList<Integer> list = new ArrayList<>(set);
                // 遍历个数
                for (int j = 1; j <= number[i]; j++) {
                    // 从一个砝码往上加
                    for (int k = 0; k < list.size(); k++) {
                        // 每个数量的砝码都会去匹配
                        set.add(list.get(k) + g[i] * j);
                    }
                }
            }
            System.out.println(set.size());
        }
    }
}
全部评论

相关推荐

半解316:内容充实,细节需要修改一下。 1,整体压缩为一页。所有内容顶格。 2,项目描述删除,直接写个人工作量 修改完之后还需要建议,可以私聊
点赞 评论 收藏
分享
Vincent777...:实习经历可以考虑放上去,对于软件使用方面可以细化一些,比如调整为:熟悉基于LSDYNA的瞬态动力学仿真分析,熟悉基于WORKBENCH的结构拓扑优化
我的简历长这样
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

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