题解 | #称砝码#

称砝码

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

最简单最容易理解的解法

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.Set;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String str ="";
        while((str =  reader.readLine()) !=null){

            String str1 = reader.readLine();
            String str2 = reader.readLine();
            int len = Integer.parseInt(str);
            int[] a = new int[len];
            int[] b = new int[len];
            String[] c = str1.split(" ");
            String[] d = str2.split(" ");
            Set<Integer> set = new HashSet();
            for (int i = 0; i < c.length; i++) {//依次遍历每个砝码
                Integer[] x = new Integer[set.size()];
                set.toArray(x);
                int s1 = Integer.parseInt(c[i]);
                int s2 = Integer.parseInt(d[i]);
                while(s2>0) {//依次遍历砝码数
                    set.add(s1 * s2);//每个砝码与砝码数相乘
                    for (Integer n : x) {//将前一个砝码可能性与当前砝码称重相加
                        set.add(n+s1*s2);
                    }
                    s2--;
                }

            }
            System.out.println(set.size()+1);
        }
    }


}
全部评论

相关推荐

09-24 18:30
已编辑
长春工业大学 产品经理
小肥罗:HR就是好人的缩写哈哈哈哈
点赞 评论 收藏
分享
头像
昨天 20:19
已编辑
门头沟学院 人工智能
本文略长,献给身处双非、学院本科的低年级依旧陷入迷茫的同学,一个参考。夹杂强烈主观因素,若观点不同,仅当笑料。近日,工作之余的午休时间给母校的学弟学妹进行了宣讲,同时也接受了牛客的访谈,不约而同的触发了两个关键词考研,就业。现象今年和去年,认识的学弟学妹,来自知某、抖某、牛客等系列的学弟学妹,这次宣讲,约有20个学弟学妹来加了我的联系方式,向我取经,聊聊未来,聊聊想法。我这里简单概括一下。1.现在很迷茫,大方向摇摆就业还是考研,但是倾向考研。小方向摇摆竞赛和项目,不知道怎么去做,不知道怎么开始。2.考研的直接目的绝大多数都是为了(混)学历,根本目的就是提高就业竞争力。3.我把他们都拉了个群,在...
牛客85294058...:“私聊能够滔滔不绝,而拉了一个小群之后就完全一声不吭”个人观点这跟从小到大“不要浪费大家时间”的社会环境有关:个人化的提问,如果你上学时有留心、或者参加QA环节多,会注意到这种做法经常是被人骂的。要营造让大家开口的氛围和做出欢迎讨论的议题设置还是比较难的,期待方法探索。
投递大连飞创信息技术有限公司等公司10个岗位
点赞 评论 收藏
分享
评论
3
1
分享

创作者周榜

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