You are given an array a1,a2,…,ana1,a2,…,an.
In one operation you can choose two elements aiai and ajaj (i≠ji≠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.
The first line contains a single integer nn (2≤n≤1052≤n≤105) — the size of the array.
The second line contains nn integers a1,a2,…,ana1,a2,…,an (1≤ai≤1091≤ai≤109) — the elements of the array.
Print "YES" if it is possible to make all elements zero, otherwise print "NO".
4 1 1 2 2
YES
6 1 2 3 4 5 6
NO
In the first example, you can make all elements equal to zero in 33 operations:
In the second example, one can show that it is impossible to make all elements equal to zero.
#include<stdio.h> #include<iostream> #include<algorithm> #include<string.h> #include<vector> #include<cmath> #include<string> #include<map> #include<queue> using namespace std; typedef long long ll; ll num[100001],n; //priority_queue<ll,vector<ll>,less<ll> > p; int main(){ while(~scanf("%lld",&n)){ ll sum=0,max_k=-1; for(ll i=1;i<=n;i++){ scanf("%lld",&num[i]); sum+=num[i]; max_k=max(max_k,num[i]); } //如果总和不是偶数,或者最大值比总和的一半大,不能实现 if(sum%2==1||max_k>sum/2){ printf("NO\n"); continue; } else { printf("YES\n"); continue; } } return 0; } // /\ | / |**、 // / \ | / | // / \ |/ | / _____ ____ | / // /------\ |\ |__/ / \ \ /\ / / \ | / // / \ | \ | / \ \ / \ / /______\ |/ // / \ | \ | \ / \ / \ / \ | // / \ | \ | \_____/ \/ \/ \_____ | /** * ┏┓ ┏┓ * ┏┛┗━━━━━━━┛┗━━━┓ * ┃ ┃ * ┃ ━ ┃ * ┃ > < ┃ * ┃ ┃ * ┃... ⌒ ... ┃ * ┃ ┃ * ┗━┓ ┏━┛ * ┃ ┃ Code is far away from bug with the animal protecting * ┃ ┃ 神兽保佑,代码无bug * ┃ ┃ * ┃ ┃ * ┃ ┃ * ┃ ┃ * ┃ ┗━━━┓ * ┃ ┣┓ * ┃ ┏┛ * ┗┓┓┏━┳┓┏┛ * ┃┫┫ ┃┫┫ * ┗┻┛ ┗┻┛ */ // warm heart, wagging tail,and a smile just for you! // // _ooOoo_ // o8888888o // 88" . "88 // (| -_- |) // O\ = /O // ____/`---‘\____ // .‘ \| |// `. // / \||| : |||// // / _||||| -:- |||||- // | | \\ - /// | | // | \_| ‘‘\---/‘‘ | | // \ .-\__ `-` ___/-. / // ___`. .‘ /--.--\ `. . __ // ."" ‘< `.___\_<|>_/___.‘ >‘"". // | | : `- \`.;`\ _ /`;.`/ - ` : | | // \ \ `-. \_ __\ /__ _/ .-` / / // ======`-.____`-.___\_____/___.-`____.-‘====== // `=---=‘ // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ //
原文:https://www.cnblogs.com/akpower/p/11331023.html