题解 | 灵异背包?

求解代码

java 复制代码
public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));

        int n = Integer.parseInt(br.readLine());
        String[] str = br.readLine().split("\\s+");

        long sum = 0;
        int minOdd = Integer.MAX_VALUE;

        for (String s : str){
            int num = Integer.parseInt(s);

            sum += num;

            if((num&1)==1){
                minOdd=Math.min(num, minOdd);
            }
        }

        long res;

        if((sum&1)==0){
            res = sum;
        }else{
            if(minOdd!=Integer.MAX_VALUE){
                res = sum - minOdd;// 总和是奇数,需要减去最小的奇数(若存在)
            }else{
                res = 0;// 没有奇数,只能选空背包
            }
        }
        out.println(res);
        out.flush();
        out.close();
        br.close();

    }
相关推荐
ttod_qzstudio1 小时前
Java 常用语法极简通关(五):类与对象——字段、方法、构造器、this 与 static
java·开发语言·python
一笑的小酒馆2 小时前
Android中WebRTC通信
android
萧瑟余晖2 小时前
Java深入解析篇十七之Spring Security
java·开发语言·spring
离陌在学C#5 小时前
C# 重载与重写:深入理解面向对象编程的核心概念
java·c#
KevinWang_5 小时前
Android Hilt 依赖注入
android
洛阳泰山5 小时前
AI 应用层被 Python 卷成红海,为什么我偏要用 Java 造一个 RAG + 工作流引擎?
java·人工智能·后端
二十雨辰5 小时前
[Java]-Spring面试题
java·开发语言
老马历写记5 小时前
Maven POM 依赖管理总结
java·maven·system·pom·optional
古法安卓5 小时前
Android-深入理解 Android 回调(Callback)机制
android·性能优化·android studio
古法安卓5 小时前
Android-车机 GNSS 定位数据接收问题排查
android·java·android studio