HJ169 灵异背包?
题目题解(36)讨论(22)排行简单 通过率43.17% 时间限制1秒 空间限制256M知识点贪心校招时部分企业笔试将禁止编程题跳出页面为提前适应练习时请使用在线自测而非本地IDE。描述给定 nn 个正整数 {a1,a2,…,an}{a1,a2,…,an}你可以任选若干个放入“灵异背包”。要求背包内所有数之和为偶数且在满足偶数的前提下尽可能大。若一个数也不选则背包和为 00。请输出可以获得的最大偶数和。输入描述第一行输入一个整数 n(1≦n≦105)n(1≦n≦105)。第二行输入 nn 个整数 a1,a2,…,an(1≦ai≦2×104)a1,a2,…,an(1≦ai≦2×104)。输出描述输出一个整数表示满足条件的最大偶数和。示例1输入3 2 5 6复制输出8复制说明当灵异背包里面有(2,5,6)(2,5,6)此时总和为2561325613为奇数不满足条件。 当灵异背包里面有(2,6)(2,6)此时总和为268268为偶数且为最大值。示例2输入1 3复制输出0复制说明选择的灵异背包为空总和为0。#include iostream using namespace std; int main() { int n;cinn; int a[n],s0,minji2e4; //求和和为偶则为答案为奇数减去最小的奇数 for(int i0;in;i) { cina[i]; sa[i]; if(a[i]%21) minjimin(minji,a[i]); } if(s%20) couts; else couts-minji; return 0; }