牛客NOIP暑期七天营-普及组2-A采蘑菇

采蘑菇

https://ac.nowcoder.com/acm/contest/926/A

题目大意:已知n个点的蘑菇数量,采到的蘑菇只能是偶数,你可以将某个点的蘑菇数量加1,请问最多采多少蘑菇?

显然,偶数的全部都可以采;对于奇数的,至多使用1次魔法增加1后进行采摘,贪心选择最大的奇数。如果没有奇数,魔法就不用了,用了会导致偶数少采一个。

#include <bits/stdc++.h>
using namespace std;
int n, m, i, j, k, s;
int main(){
    scanf("%d", &n);
    for(i=1; i<=n; i++){
        scanf("%d", &k);
        if(k&1) m = max(m, k);
        else s += k;
    }
    if(m) s += m+1;
    printf("%d\n", s);
    return 0;
}
全部评论

相关推荐

白也ya:今天也是狠狠的被boss拷打了😋,终于知道双非想约到面试有多难了
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务