• Codeforces Round #577 (Div. 2)B. Zero Array


    You are given an array a1,a2,,ana1,a2,…,an.

    In one operation you can choose two elements aiai and ajaj (iji≠j) and decrease each of them by one.

    You need to check whether it is possible to make all the elements equal to zero or not.

    Input

    The first line contains a single integer nn (2n1052≤n≤105) — the size of the array.

    The second line contains nn integers a1,a2,,ana1,a2,…,an (1ai1091≤ai≤109) — the elements of the array.

    Output

    Print "YES" if it is possible to make all elements zero, otherwise print "NO".

    题意大概就是给n个数,经过多次操作(选2个数减1)让n个数全部变为0,能得话yes,不行的话no
    一开始想的话,就是把所有的数加起来,再判断这个数是不是偶数,如果是偶数就是yes,反之则是no
    自信一交,果然wa,然后自己编了个1 4 9 按照我的代码,应该是yes,但显然是no,但我已经停止思考了 ,于是放弃了
    其实只要加个条件就可以了,判断no还有一个条件就是数里面的最大的数大于总和的一半,emmm,这很好想。。。代码如下
    #include <bits/stdc++.h>
    #define INF 0x3f3f3f3f
    const double PI=3.1415926535897931;
    const long long sale=1e9+10;
    const int MA= 1e7+10;
    const int ma= 2*1e5+10;
    const int few=1e3+10;
    using namespace std;
    //////////////////////////////////////////////
    int main()
    {
        int n;
        cin>>n;
        long long sum=0,maxx=-1,a;
        for(int i=0; i<n; i++)
        {
            cin>>a;
            maxx=max(maxx,a);
            sum+=a;
        }
        if(maxx>sum/2||(sum%2))
            cout<<"NO"<<endl;
        else
            cout<<"YES"<<endl;
        return 0;
    }
  • 相关阅读:
    Python操作redis数据库
    计算机基础与操作系统
    git使用快速入门
    RESTful API设计规范
    Python数据分析常用的库总结
    关于Cookie和Session
    一个开发的Linux使用心得总结
    排序算法与查找算法
    Django的form,model自定制
    Redis基础、高级特性与性能调优
  • 原文地址:https://www.cnblogs.com/Aracne/p/12189326.html
Copyright © 2020-2023  润新知