题解 | 分割等和子集

分割等和子集

https://www.nowcoder.com/practice/65ade309fa4d4067a9add749721bfdc0

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int a = in.nextInt();
            int[] da = new int[a];
            int total = 0;
            for (int i = 0; i < a; i++) {
                da[i] = in.nextInt();
                total = total +  da[i];
            }
            if (total % 2 == 1) {
                System.out.println(false);
                return;
            }
            int sub = total / 2;
            int[] subArr = new int[sub + 1];
            subArr[0] = 0;
            for (int i : da) {
                for (int j = sub; j >= i; j--) {
                    subArr[j] = Math.max(subArr[j], subArr[j - i] + i);
                }
            }
            System.out.println(subArr[sub] == sub);

        }
    }
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-26 15:18
点赞 评论 收藏
分享
小浪_Coding:找硬件测试,也可兼顾软测欧, 简历还可以的 ,注意排版,项目写的有条理一点, 然后个人技能多加点, 润色好简历之后就开始沟通海投了,深圳,东莞这边做硬件相关的公司还不少, 医疗类,仪器类的都可以尝试
点赞 评论 收藏
分享
迟缓的斜杠青年巴比Q...:简历被投过的公司卖出去了,我前两天遇到过更离谱的,打电话来问我有没有意向报班学Java学习,服了,还拿我学校一个学长在他们那报班学了之后干了华为OD当招牌
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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