链接        submit

B. Zero Array
time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

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.

Input

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.

Output

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

Examples
input

Copy
4
1 1 2 2
output

Copy
YES
input

Copy
6
1 2 3 4 5 6
output

Copy
NO
Note

In the first example, you can make all elements equal to zero in 33 operations:

  • Decrease a1a1 and a2a2,
  • Decrease a3a3 and a4a4,
  • Decrease a3a3 and a4a4

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
// ____/`---'\____
// .' \| |// `.
// / \||| : |||// \
// / _||||| -:- |||||- \
// | | \\ - /// | |
// | \_| ''\---/'' | |
// \ .-\__ `-` ___/-. /
// ___`. .' /--.--\ `. . __
// ."" '< `.___\_<|>_/___.' >'"".
// | | : `- \`.;`\ _ /`;.`/ - ` : | |
// \ \ `-. \_ __\ /__ _/ .-` / /
// ======`-.____`-.___\_____/___.-`____.-'======
// `=---='
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//

  

最新文章

  1. 年终巨献 史上最全 ——LINQ to SQL语句
  2. Jackson 通过自定义注解来控制json key的格式
  3. 似魔鬼的 『 document.write 』
  4. LinkIssue: Error &#39;LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or cor
  5. 创建catalog数据库
  6. 自定义SharePoint 2013 元数据选择控件
  7. UVA1635 Irrelevant Elements(唯一分解定理 + 组合数递推)
  8. iOS开发之——从零开始完成页面切换形变动画
  9. background-position 用法详细介绍
  10. Knockout.Js官网学习(html绑定、css绑定)
  11. POJ1651:Multiplication Puzzle(区间DP)
  12. 汽车总线obd模拟器,obd仿真器,ecu模拟器,obd开发测试工具,可以模拟ecu中的obd协议 MRD-5050
  13. js 获取当前日期所在周的周一
  14. Solr6.5.0配置中文分词器配置
  15. 2018/1/27 Zookeeper实现分布式锁
  16. Spring-Data-JPA尝鲜:快速搭建CRUD+分页后台实例
  17. Tournament ZOJ - 4063 (青岛区域赛 F 打表)
  18. Chrome扩展程序——TabCopy:一键复制网页标题和网址
  19. ubuntu中给python3安装opencv
  20. centos7下安装docker(8.2进入容器)

热门文章

  1. 初学mysql 如何删除数据库 如何安装mysql
  2. docker部署项目: centos+python+redis+mysql+uwsgi+nginx
  3. premiere pro 2019 mac 破解
  4. ew做代理 进一步内网渗透
  5. Java中可变参数
  6. 使用io/ioutil进行读写文件
  7. 使用fui(Find Unused Imports)扫描工程中不用的类
  8. P2341 [HAOI2006]受欢迎的牛(更完)
  9. Python - 二叉树, 堆, headq 模块
  10. Vue.js父子组件如何传值 通俗易懂