Problem:
 Score : 300 points    Problem Statement There are N integers written on a blackboard. The i -th integer is A_i .  Takahashi will repeatedly perform the following operation on these numbers:   Select a pair of integers, A_i and A_j , that have the same parity (that is, both are even or both are odd) and erase them.  Then, write a new integer on the blackboard that is equal to the sum of those integers, A_i+A_j .   Determine whether it is possible to have only one integer on the blackboard.      Constraints  2 ≦ N ≦ 10^5  1 ≦ A_i ≦ 10^9  A_i is an integer.         Input The input is given from Standard Input in the following format:  N  A_1  A_2 … A_N       Output If it is possible to have only one integer on the blackboard, print YES . Otherwise, print NO .        Sample Input 1 3
1 2 3      Sample Output 1 YES  It is possible to have only one integer on the blackboard, as follows:   Erase 1 and 3 from the blackboard, then write 4 . Now, there are two integers on the blackboard: 2 and 4 .  Erase 2 and 4 from the blackboard, then write 6 . Now, there is only one integer on the blackboard: 6 .        Sample Input 2 5
1 2 3 4 5      Sample Output 2 NO

Solution (Python):
n=int(input())
a=list(map(int,input().split()))
count=0
for i in range(n):
    if a[i]%2==1:
        count+=1
if count%2==0:
    print("YES")
else:
    print("NO")

Solution (Python):
n=int(input())
a =[int(i)%2 for i in input().split()]
if sum(a)%2==1:
  print('NO')
else:
  print('YES')

Solution (Python):
N = int(input())
A = list(map(int, input().split()))
cnt = 0
for a in A:
    if a%2 != 0:
        cnt += 1
if cnt%2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
N = int(input())
A = list(map(int, input().split()))
if sum(A)%2:
    print("NO")
else:
    print("YES")

Solution (Python):
n=int(input())
a=list(map(int,input().split()))

odd=0
even=0

for aa in a:
    if aa%2==0:
        even+=1
    else:
        odd+=1





if odd%2==1 and ( odd>2 or even>0):
    print("NO")
else:
    print("YES")

Solution (Python):
n = int(input())
alst = list(map(int, input().split()))
odd_cnt = 0
for a in alst:
    if a % 2 == 1:
        odd_cnt = (odd_cnt + 1) % 2
if odd_cnt == 1:
    print("NO")
else:
    print("YES")

Solution (Python):
n=int(input())
a=list(map(int,input().split()))

odd=0
even=0

for aa in a:
    if aa%2==0:
        even+=1
    else:
        odd+=1





if odd%2==1 and even>0:
    print("NO")
else:
    print("YES")

Solution (Python):
import sys

sys.setrecursionlimit(10 ** 8)

input = sys.stdin.readline


def main():
    N = int(input())
    A = [int(x) for x in input().split()]

    odd = 0
    even = 0

    for a in A:
        if a % 2 == 0:
            even += 1
        else:
            odd += 1

    if odd % 2 == 1:
        print("NO")
        return

    print("YES")


if __name__ == '__main__':
    main()

Solution (Python):
n=int(input())
a=list(map(int,input().split()))
cnt=0
for i in range(n):
  if a[i]%2!=0:
    cnt=cnt+1
if cnt%2!=0:
  print("NO")
else:
  print("YES")

Solution (Python):
n = int(input())
a = list(map(int,input().split()))

ki = sum(1 for i in a if i%2 == 1)

if ki%2 == 1:
    print("NO")
else:
    print("YES")

Solution (Python):

import sys
import math
from bisect import bisect_left
from bisect import bisect_right
import collections
import copy
import heapq
from collections import defaultdict
from heapq import heappop, heappush
import itertools
input = sys.stdin.readline
from collections import defaultdict
from heapq import heappop, heappush

from decimal import *













































def inputInt(): return int(input())
def inputMap(): return map(int, input().split())
def inputList(): return list(map(int, input().split()))
def inputStr(): return input()[:-1]

inf = float('inf')
mod = 1000000007




def main():
	N = inputInt()
	A = inputList()

	ans = 0
	for i in A:
		if i % 2 == 1:
			ans += 1

	if ans % 2 == 1:
		print("NO")
	else:
		print("YES")





def bisect_left_reverse(a, x):
    if a[0] <= x:
        return 0
    if x < a[-1]:
        return len(a)
    
    ok = len(a) - 1
    ng = 0
    while (abs(ok - ng) > 1):
        mid = (ok + ng) // 2
        if a[mid] <= x:
            ok = mid
        else:
            ng = mid
    return ok

def bisect_right_reverse(a, x):
    if a[0] < x:
        return 0
    if x <= a[-1]:
        return len(a)
    
    ok = len(a) - 1
    ng = 0
    while (abs(ok - ng) > 1):
        mid = (ok + ng) // 2
        if a[mid] < x:
            ok = mid
        else:
            ng = mid
    return ok





def binary_search(list, item):
    low = 0
    high = len(list) - 1

    while low <= high:
        mid = (low + high) //2
        guess = list[mid]
        if guess == item:
            return mid
        if guess > item:
            high = mid -1
        else:
            low = mid + 1
    return None




def sunuke(N, K, mod=10**9+7):
	if N < K or K-1 < 0:
		return 0
	else:
		return combination(N-1, K-1, mod)




def combination(n, r, mod=10**9+7):
    r = min(r, n-r)
    res = 1
    for i in range(r):
        res = res * (n - i) * modinv(i+1, mod) % mod
    return res


def modinv(a, mod=10**9+7):
    return pow(a, mod-2, mod)

def egcd(a, b):
    if a == 0:
        return b, 0, 1
    else:
        g, y, x = egcd(b % a, a)
        return g, x - (b // a) * y, y




def H(n, r, mod=10**9+7):
	
	
    return combination(n+r-1, r, mod)


class Combination:
    """
    O(n)の前計算を1回行うことで，O(1)でnCr mod mを求められる
    n_max = 10**6のとき前処理は約950ms (PyPyなら約340ms, 10**7で約1800ms)
    使用例：
    comb = Combination(1000000)
    print(comb(5, 3))  
    """
    def __init__(self, n_max, mod=10**9+7):
        self.mod = mod
        self.modinv = self.make_modinv_list(n_max)
        self.fac, self.facinv = self.make_factorial_list(n_max)

    def __call__(self, n, r):
        return self.fac[n] * self.facinv[r] % self.mod * self.facinv[n-r] % self.mod

    def make_factorial_list(self, n):
        
        
        fac = [1]
        facinv = [1]
        for i in range(1, n+1):
            fac.append(fac[i-1] * i % self.mod)
            facinv.append(facinv[i-1] * self.modinv[i] % self.mod)
        return fac, facinv

    def make_modinv_list(self, n):
        
        modinv = [0] * (n+1)
        modinv[1] = 1
        for i in range(2, n+1):
            modinv[i] = self.mod - self.mod//i * modinv[self.mod%i] % self.mod
        return modinv



def dfs(graph,parent,counter,edge):
    stk = []
    stk.append(edge)
    while len(stk) > 0:
        p = stk.pop()
        for e in graph[p]:
            if parent[p] == e:
                continue
            else:
                parent[e] = p
                counter[e] += counter[p]
                stk.append(e)



if __name__ == "__main__":
	main()

Solution (Python):
n = int(input())
A = list(map(int, input().split()))

odd = 0
for i in range(n):
    if A[i]%2 == 1:
        odd += 1
if odd%2 == 0:
    print('YES')
else:
    print('NO')

Solution (Python):
N=int(input())
L=list(map(int,input().split()))
C=0
for i in range(N):
	if L[i]%2==1:
		C+=1
if C%2==1:
	print("NO")
else:
	print("YES")

Solution (Python):
N = int(input())
A = [int(x)%2 for x in input().split()]
if sum(A) % 2 == 1:
    print("NO")
else:
    print("YES")

Solution (Python):
N = int(input())
A = list(map(int,input().split()))
t = 0
for e in A:
    t += e%2
print("YES" if t%2 == 0 else "NO")

Solution (Python):
n = int(input())
A = list(map(int, input().split()))
cnt = 0
for a in A:
  if a%2 != 0: cnt += 1
print("YES" if cnt%2==0 else "NO")

Solution (Python):
from statistics import median


from fractions import gcd
from itertools import combinations 
from collections import deque
from collections import defaultdict
import bisect










import sys
sys.setrecursionlimit(10000000)
mod = 10**9 + 7

def readInts():
  return list(map(int,input().split()))
def I():
  return int(input())
n = I()
A = readInts()
print('YES' if sum(A)%2 != 1 else 'NO')

Solution (Python):
N = int(input())
A = list(map(int, input().split()))
a = 0
for i in range(N):
  if A[i]%2==1:
    a += 1
ans = 'NO'
if a%2==0:
  ans = 'YES'
print(ans)

Solution (Python):
N = int(input())
A = list(map(int,input().split()))

odd = sum(i%2 for i in A)
even = N-odd

if odd%2 == 1:
    print("NO")
else:
    print("YES")

Solution (Python):
import sys
input = sys.stdin.readline

N = int(input())
A = list(map(int, input().split()))
odd = 0

for Ai in A:
    if Ai%2==1:
        odd += 1

if odd%2==0:
    print('YES')
else:
    print('NO')

Solution (Python):
N = int(input())
A = list(map(int,input().split()))
cnt = 0
for i in range(N):
    if A[i]%2==1:
        cnt += 1
if cnt%2==0:
    print("YES")
else:
    print("NO")

Solution (Python):
n = int(input())
*A, = map(int, input().split())
if len([a for a in A if a % 2 == 1]) % 2 == 0:
    print('YES')
else:
    print(('NO'))

Solution (Python):
n = int(input())
a = list(map(int, input().split()))

num = 0
for i in range(n):
    if a[i] % 2 == 1:
        num += 1
if num % 2 == 1:
    print('NO')
else:
    print('YES')

Solution (Python):
N = int(input())
A = list(map(int, input().split()))

if sum([A[i]%2==1 for i in range(N)])%2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
import sys, re
from collections import deque, defaultdict, Counter
from math import ceil, sqrt, hypot, factorial, pi, sin, cos, radians
from itertools import accumulate, permutations, combinations, product
from operator import itemgetter, mul
from copy import deepcopy
from string import ascii_lowercase, ascii_uppercase, digits
from bisect import bisect, bisect_left
from fractions import gcd
from heapq import heappush, heappop
from functools import reduce
def input(): return sys.stdin.readline().strip()
def INT(): return int(input())
def MAP(): return map(int, input().split())
def LIST(): return list(map(int, input().split()))
def ZIP(n): return zip(*(MAP() for _ in range(n)))
sys.setrecursionlimit(10 ** 9)
INF = float('inf')
mod = 10 ** 9 + 7

N = INT()
A = LIST()

odd = 0
even = 0
for a in A:
	if a%2 == 1:
		odd += 1
	else:
		even += 1

if (even == 0 and odd == 1) or odd%2 == 0:
	print("YES")
else:
	print("NO")

Solution (Python):
import sys
input = lambda : sys.stdin.readline().rstrip()

n = int(input())
a = map(int, input().split())

odd = 0

for i in a:
    if i % 2 == 1:
        odd += 1

ans = "YES" if odd % 2 == 0 else "NO"

print(ans)

Solution (Python):
n = int(input())
A = list(map(int, input().split()))
kisu = 0
if n == 1:
    print("YES")
    exit()


for a in A:
    if a % 2 == 1:
        kisu += 1
if kisu % 2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
n = int(input())
a = list(map(int, input().split()))

ans = 0
for i in range(n):
    if a[i] % 2 == 1:
        ans += 1

if ans % 2 == 1:
    print('NO')
else:
    print('YES')

Solution (Python):
N=int(input())
print("YES" if sum(map(int,input().split()))%2==0 else "NO")

Solution (Python):
N=int(input())
A=list(map(int,input().split()))
odd=0
for a in A:
    if a%2==1:
        odd+=1
print("YES" if odd%2==0 else "NO")

Solution (Python):
N = int(input().strip())
s = 0
for i in input().strip().split(" "):
    s += int(i)%2
if s % 2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
"""解説から
1. 偶数+偶数=偶数, 奇数+奇数=偶数になる
2. 偶奇が入り混じった配列Aの中にある奇数が偶数個であれば、YESとなる
3. 2の前提が達成されているかを調べるには以下の2通りの方法がある
    ・各Aiを調べ奇数を数える
    ・1の前提から、sum(A)が偶数ならば、Aの中に奇数は偶数個あるといえる
"""
input()
print('YES' if sum(map(int, input().split())) % 2 == 0 else 'NO')

Solution (Python):
input()
A = map(int,input().split())
odd = 0
for a in A:
    if a%2!=0:
        odd+=1
print("NO" if odd%2!=0 else "YES")

Solution (Python):
n = int(input())
a = list(map(int,input().split()))
c = 0
for n in a:
  if n%2 == 1:
    c += 1
if c%2 == 0:
  print('YES')
else:
  print('NO')

Solution (Python):
n = int(input())
num_list = list(map(int, input().split()))
guki = len([i for i in num_list if i%2==1])
print('YES' if guki%2==0 else 'NO')

Solution (Python):
N = int(input())
if len([int(x) for x in input().strip().split() if int(x) % 2]) % 2:
  print('NO')
else:
  print('YES')

Solution (Python):
n = int(input())
li = list(map(int,input().split()))
if sum(li)%2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
N = int(input())
A = list(map(int,input().split()))
even = 0
odd = 0
for i in range(N):
  if A[i] % 2 == 0:
    even += 1
odd = N - even
if odd % 2 == 0: 
  print('YES')
else:
  print('NO')

Solution (Python):
n = int(input())
A = list(map(int, input().split()))
A = [a for a in A if a % 2 == 1]
if len(A) % 2 == 0:
    print('YES')
else:
    print('NO')

Solution (Python):
N = int(input())
A = list(map(int, input().split()))

odd_num = sum([A[i] % 2 == 1 for i in range(N)])

if odd_num % 2 == 1:
  print("NO")
else:
  print("YES")

Solution (Python):
n = int(input())
a = list(map(int,input().split()))
cou = 0
for i in a:
  if i%2!=0:
    cou += 1
if cou%2==0:
  print("YES")
else:
  print("NO")

Solution (Python):
n=int(input())

t = list(map(int,input().split()))

count = 0

for i in t:
    if i%2==1:
        count += 1
if count%2==1:
    print('NO')
else:
    print('YES')

Solution (Python):
n = int(input())
A = list(map(int,input().split()))
A_g = [i for i in A if i % 2 == 0]
A_k = [i for i in A if i % 2 == 1]

if len(A_k) % 2 == 1:
    print('NO')
else:
    print('YES')

Solution (Python):
n=int(input())
a=list(map(int,input().split()))
odd=0
even=0
for i in range(n):
  if a[i]%2 == 0:
    even += 1
  else:
    odd += 1
if n == 1:
  print('YES')
elif odd % 2 == 0:
  print('YES')
else:
  print('NO')

Solution (Python):
n = int(input())
li = list(map(int,input().split()))
odd = 0
even = 0

for i in li:
  if i%2 == 0:
    even += 1
  else:
    odd += 1
    
if odd%2==0:
  print("YES")
else:
  print("NO")

Solution (Python):
n,*a=map(int,open(0).read().split())
print('NO' if sum(a)%2 else 'YES')

Solution (Python):
n, *a_l = map(int, open(0).read().split())
odd = 0
for a in a_l:
    if a%2 == 1:
        odd += 1
if odd %2 == 0:
    print('YES')
else:
    print('NO')

Solution (Python):
n = int(input())
a = list(map(int, input().split()))



cnt = 0
for i in a:
    if i % 2 == 1:
        cnt += 1

if cnt % 2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
def resolve():
    
    n = int(input())
    
    
    
    
    
    A = list(map(int, input().split()))
    
    

    cnt = 0
    for x in A:
        if x % 2 == 1:
            cnt += 1

    if cnt % 2 == 0:
        print("YES")
    else:
        print("NO")


resolve()

Solution (Python):


n = int(input())
a = list(map(int, input().split()))

print('YES' if len([i for i in a if i%2==1])%2==0 else 'NO')

Solution (Python):
N = int(input())
d = {0:0, 1:0}
A = map(int, input().split())
for a in A:
  d[a%2] += 1

if d[1] % 2 == 0:
  print('YES')
else:
  print('NO')

Solution (Python):
N = int(input())
d = {0:0, 1:0}
for a in map(int, input().split()):
  d[a%2] += 1

if d[1] % 2 == 0:
  print('YES')
else:
  print('NO')

Solution (Python):
import sys

input = sys.stdin.readline


def main():
    N = int(input())
    A = list(map(int, input().split()))

    if sum(A) % 2 == 0:
        ans = "YES"
    else:
        ans = "NO"
    print(ans)


if __name__ == "__main__":
    main()

Solution (Python):
import sys

input = sys.stdin.readline


def main():
    N = int(input())
    A = list(map(int, input().split()))

    n_odd = 0
    for a in A:
        n_odd += 1 if a % 2 == 1 else 0

    if n_odd % 2 == 0:
        ans = "YES"
    else:
        ans = "NO"
    print(ans)


if __name__ == "__main__":
    main()

Solution (Python):
N = int(input())
A = list(map(int, input().split()))

o = 0
for i in range(N):
    if A[i] % 2 == 1:
        o += 1
if o % 2 == 0:
    print('YES')
else:
    print('NO')

Solution (Python):
n = int(input())
a = list(map(int,input().split()))

b = list(map(lambda x : x%2 , a))
if sum(b)%2 :
  print('NO')
else:
  print('YES')

Solution (Python):
n = int(input())
A = list(map(int, input().split()))
odd = 0
for a in A:
    odd += 1 if a % 2 == 1 else 0
print("YES" if odd % 2 == 0 else "NO")

Solution (Python):
N = int(input())
A = list(map(int,input().split()))
AA = sum([i%2 for i in A])
if N == 1:
    print('YES')
    exit()
if AA % 2 == 1:
    print('NO')
    exit()
print('YES')

Solution (Python):
import sys

sys.setrecursionlimit(10 ** 7)
f_inf = float('inf')
mod = 10 ** 9 + 7


def resolve():
    n = int(input())
    A = list(map(int, input().split()))

    odd = 0
    for a in A:
        odd += 1 if a % 2 != 0 else 0

    print("YES") if odd % 2 == 0 else print("NO")


if __name__ == '__main__':
    resolve()

Solution (Python):
N = int(input())
A = [int(j) for j in input().split()]

if sum(A)%2==0:
    print('YES')
else:
    print('NO')

Solution (Python):
n = int(input())
a = list(map(int, input().split()))

if sum(a)%2==0:
  print("YES")
else:
  print("NO")

Solution (Python):
n = int(input())
a = list(map(int, input().split()))
b = []
for num in a:
  b.append(num%2)
  
import collections
c = collections.Counter(b)

num0=c[0]
num1=c[1]
num0 += num1//2
num0 %= 2
num1 = num1%2

if num0+num1==2:
  print("NO")
else:
  print("YES")

Solution (Python):
import math
import queue
from collections import defaultdict

def readInt():
	return int(input())
def readInts():
	return list(map(int, input().split()))
def readChar():
	return input()
def readChars():
	return input().split()
def factorization(n):
	res = []
	if n%2==0:
		res.append(2)
	for i in range(3,math.floor(n//2)+1,2):
		if n%i==0:
			c = 0
			for j in res:
				if i%j==0:
					c=1
			if c==0:
				res.append(i)
	return res
def fact2(n):
	p = factorization(n)
	res = []
	for i in p:
		c=0
		z=n
		while 1:
			if z%i==0:
				c+=1
				z/=i
			else:
				break
		res.append([i,c])
	return res
def fact(n):
	ans = 1
	m=n
	for _i in range(n-1):
		ans*=m
		m-=1
	return ans
def comb(n,r):
	if n<r:
		return 0
	l = min(r,n-r)
	m=n
	u=1
	for _i in range(l):
		u*=m
		m-=1
	return u//fact(l)
def printQueue(q):
	r=qb
	ans=[0]*r.qsize()
	for i in range(r.qsize()-1,-1,-1):
		ans[i] = r.get()
	print(ans)
def dq():
	return queue.deque()
class UnionFind():
	def __init__(self, n):
		self.n = n
		self.parents = [-1]*n

	def find(self, x): 
		if self.parents[x]<0:
			return x
		else:
			self.parents[x] = self.find(self.parents[x])
			return self.parents[x]

	def union(self,x,y):
		x = self.find(x)
		y = self.find(y)

		if x==y:
			return

		if self.parents[x]>self.parents[y]:
			x,y = y,x

		self.parents[x]+=self.parents[y]
		self.parents[y]=x

	def size(self,x):
		return -1*self.parents[self.find(x)]

	def same(self,x,y):
		return self.find(x)==self.find(y)

	def members(self,x): 
		root = self.find(x)
		return [i for i in range(self.n) if self.find(i)==root]

	def roots(self):
		return [i for i,x in enumerate(self.parents) if x<0]

	def group_count(self):
		return len(self.roots())

	def all_group_members(self):
		return {r: self.members(r) for r in self.roots()} 
def bitArr(n):
	x = 1
	zero = "0"*n
	ans = []
	ans.append([0]*n)
	for i in range(2**n-1):
		ans.append(list(map(lambda x:int(x),list((zero+bin(x)[2:])[-1*n:]))))
		x+=1
	return ans;
def arrsSum(a1,a2):
	for i in range(len(a1)):
		a1[i]+=a2[i]
	return a1
def maxValue(a,b,v):
	v2 = v
	for i in range(v2,-1,-1):
		for j in range(v2//a+1): 
			k = i-a*j
			if k%b==0:
				return i
	return -1

n = readInt()
neven = 0
nodd = 0
for i in readInts():
	if i%2==0:
		neven+=1
	else:
		nodd+=1

if nodd%2==1:
	if neven==0:
		print("YES")
		exit()
	else:
		print("NO")
		exit()
else:
	print("YES")

Solution (Python):
import sys
def input(): return sys.stdin.readline().strip()

def resolve():
    n=int(input())
    l=list(map(int,input().split()))
    if sum(l)%2==1:
        print('NO')
    else:
        print('YES')
resolve()

Solution (Python):


N = int(input())
A = list(map(int, input().split()))
k = 0
for i in range(N):
    k = (A[i] + k) % 2
k *= int(N!=1)
ans = ['YES', 'NO']
print(ans[k])

Solution (Python):
import sys
def input(): return sys.stdin.readline().strip()

def resolve():
    n=int(input())
    l=list(map(int,input().split()))
    cnt=0
    for i in l:
        if i%2==1:
            cnt+=1
    if cnt%2==1:
        print('NO')
    else:
        print('YES')
resolve()

Solution (Python):
import sys
sys.setrecursionlimit(10 ** 5 + 10)
def input(): return sys.stdin.readline().strip()

def resolve():
    
    n=int(input())
    L=list(map(int,input().split()))
    print('YES' if sum(L)%2==0 else 'NO')
    
resolve()

Solution (Python):
import sys
input = sys.stdin.readline


n = int(input())
a = list(map(int, input().split()))
odd_count = 0
even_count = 0

for i in range(n):
	if a[i] % 2 == 1:
		odd_count += 1
	else:
		even_count += 1

if odd_count % 2 == 1:
	print('NO')
else:
	print('YES')

Solution (Python):
n = int(input())
a = list(map(int, input().split()))
odd_num = 0
for i in range(n):
  if a[i] % 2 == 1:
    odd_num += 1
if odd_num % 2 == 0:
  print('YES')
else:
  print('NO')

Solution (Python):
import sys
import math
import bisect


def main():
    n = int(input())
    A = list(map(int, input().split()))
    cnt = 0
    for a in A:
        if a % 2:
            cnt += 1
    if cnt % 2 == 0:
        print('YES')
    else:
        print('NO')

if __name__ == "__main__":
    main()

Solution (Python):
n = int(input())
a = list(map(int, input().split()))
even = 0
not_even = 0
for v in a:
  if v%2==0: even += 1
  else: not_even += 1
  if not_even == 2:
    even += 1
    not_even = 0
print("YES" if not_even == 0 else "NO")

Solution (Python):
_=input()
*a,=map(int, input().split())
if sum(a)%2:
    print("NO")
else:
    print("YES")

Solution (Python):
N = int(input())
A = list(map(int, input().split()))
cnt = 0
for i in range(N):
  if A[i] % 2 == 1:
    cnt += 1
if cnt % 2 == 0:
  print('YES')
else:
  print('NO')

Solution (Python):
N=input()
o = len([i for i in input().split() if int(i)%2!=0])
print("YES" if o%2==0 else "NO")

Solution (Python):
N = int(input())
A = list(map(int,input().split()))
count = 0
for i in range (N):
  if A[i]%2==1:
    count += 1
if count%2==1:
  print("NO")
else:
  print("YES")

Solution (Python):
n = int(input())
a = list(map(int,input().split()))
A = sum(a)

if A % 2 == 0:
  print('YES')
else:
  print('NO')

Solution (Python):
from sys import stdin


if __name__ == "__main__":
    _in = [_.rstrip() for _ in stdin.readlines()]
    N = int(_in[0])  
    A_arr = list(map(int,_in[1].split(' ')))  
    
    A_arr_odd = [A for A in A_arr if A%2==1]
    TF = 'YES' if len(A_arr_odd)%2==0 else 'NO'
    
    print(TF)

Solution (Python):

n = int(input())
a = list(map(int,input().split()))



count = 0
for i in a:
    if i%2 == 1:
        count += 1
if count%2 == 0:
    print('YES')
else :
    print('NO')

Solution (Python):
N=int(input())
listA = list(map(int,input().split()))
listB = [i for i in listA if i % 2 == 1]
if len(listB) % 2 == 1:
    print("NO")
else:
    print("YES")

Solution (Python):
n = int(input())
a = [int(i) % 2 for i in input().split()]
print("NO") if sum(a) % 2 else print("YES")

Solution (Python):
n=int(input())
t=0
A=list(map(int, input().split()))
for i in range(n):
  t+=A[i]
if t%2==0:
  print('YES')
else:
  print('NO')

Solution (Python):
n = int(input())
a = list(map(int,input().split()))

count = 0
for i in a:
    if i % 2 != 0:
        count += 1

if count % 2 != 0:
    print("NO")
else:
    print("YES")

Solution (Python):
N = int(input())
A = list(map(int, input().split()))
odd = [x%2!=0 for x in A].count(True)
if odd%2 == 0:
  print('YES')
else:
  print('NO')

Solution (Python):
n = int(input())
a = list(map(int,input().split()))
if len([i for i in a if i % 2 == 1]) % 2 == 0:
  print("YES")
else:
  print("NO")

Solution (Python):
N=int(input())
A=list(map(int,input().split()))

a=0
b=0
for i in range(N):
    val=A[i]
    if val%2==0:
        a+=1
    else:
        b+=1

if b%2==0:
    print("YES")
else:
    print("NO")

Solution (Python):
n=input();print("YNEOS"[sum(int(x)%2 for x in input().split())%2::2])

Solution (Python):
N = int(input())
A = list(map(int, input().split()))
print('YES' if len([i for i in A if i % 2 == 1]) % 2 == 0 else 'NO')

Solution (Python):
N=int(input())
A=list(map(int,input().split()))
od=0
for i in range(N):
    if A[i]%2==1:
        od+=1
if od%2==0:
    print("YES")
else:
    print("NO")

Solution (Python):
N = int(input())
A = list(map(int,input().split()))
print('NO') if(sum(A) % 2) else print('YES')

Solution (Python):
n = int(input())
A = list(map(int, input().split()))

cnt_even = 0
cnt_odd = 0

for v in A:
	if v % 2 == 0:
		cnt_even += 1
	else:
		cnt_odd += 1

add_even = cnt_odd // 2 
cnt_odd -= add_even * 2

print('YES') if cnt_odd == 0 else print('NO')

Solution (Python):
from statistics import median


from fractions import gcd
from itertools import combinations 
from collections import deque
from collections import defaultdict
import bisect










import sys
sys.setrecursionlimit(10000000)
mod = 10**9 + 7

def readInts():
  return list(map(int,input().split()))
def main():
    n = int(input())
    print('NO' if sum(map(int,input().split()))%2 else 'YES')
if __name__ == '__main__':
  main()

Solution (Python):
n=int(input())
l=list(map(int,input().split()))
ans1=0
ans2=0
for i in range(len(l)):
    if l[i]%2==0:
        ans2+=1
    if l[i]%2==1:
        ans1+=1
if  ans1%2==0:
    print('YES')
else:
    print('NO')

Solution (Python):
n=input()
print('NO' if sum(map(int,input().split()))%2 else 'YES')

Solution (Python):
N = int(input())
A = list(map(int, input().split()))

odd = 0

for a in A:
    if a % 2 == 1:
        odd += 1

if odd % 2 == 1:
    print("NO")
else:
    print("YES")

Solution (Python):
input()

print("NO" if sum(map(int, input().split())) % 2 else "YES")

Solution (Python):
n=input()
print('NO' if sum(map(int,input().split()))%2 else 'YES')

Solution (Python):
from statistics import median


from fractions import gcd
from itertools import combinations 
from collections import deque
from collections import defaultdict
import bisect










import sys
sys.setrecursionlimit(10000000)
mod = 10**9 + 7

def readInts():
  return list(map(int,input().split()))
def main():
    n = int(input())
    print('YES' if sum(list(map(lambda x: int(x)%2, input().split())))%2 == 0 else 'NO')

if __name__ == '__main__':
  main()

Solution (Python):
n=int(input())
a=list(map(int,input().split()))

even=0
odd=0
for i in range(n):
    if a[i]%2==0:
        even+=1
    else:
        odd+=1

if odd%2==0:
    print("YES")
else:
    print("NO")

Solution (Python):
n = int(input())
a = list(map(int, input().split()))
odd = 0
for i in range(n):
    if a[i] % 2 == 1:
        odd += 1
if odd % 2 == 0:
    print('YES')
else:
    print('NO')

Solution (Python):
n = int(input())
a_list = list(map(int, input().split()))

num_of_odd = 0
for a in a_list:
    if a % 2 == 1:
        num_of_odd += 1
if num_of_odd % 2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
from sys import stdin
import sys
import math

N = int(input())
A = list(map(int, stdin.readline().rstrip().split()))

odd_nums = [i for i in A if i % 2 ==1]

if len(odd_nums) % 2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
def resolve():
    n=int(input())
    l=list(map(int, input().split()))
    if sum(l)%2==0:
        print('YES')
    else:
        print('NO')
resolve()

Solution (Python):
import sys
sys.setrecursionlimit(10 ** 7)
input = sys.stdin.readline

n = int(input())
a = list( map(int, input().split()))

cnt = 0
for i in range(n):
    if a[i] %2 == 1: cnt+=1

if cnt%2==1:
    print('NO')
else:
    print('YES')

Solution (Python):
def resolve():
    n=int(input())
    l=list(map(int, input().split()))
    cnt=0
    for i in range(n):
        if l[i]%2==1:
            cnt+=1
    if cnt%2==0:
        print('YES')
    else:
        print('NO')
resolve()

Solution (Python):
N = int(input())
*A, = map(int, input().split())

count = 0

for i in range(len(A)):
    if A[i]%2!=0:
        count = count + 1

if count%2==0:
    print("YES")
else:
    print("NO")

Solution (Python):
n=int(input())
a=list(map(int, input().split()))
odd=[]
even=[]
for i in range(len(a)):
    if(a[i]%2==0):
        even.append(a[i])
    else:
        odd.append(a[i])
if(len(odd)%2==1):
    print('NO')
else:
    print('YES')

Solution (Python):
def main():
    import sys
    input = sys.stdin.readline
    sys.setrecursionlimit(10**7)
    from collections import Counter, deque
    
    from itertools import combinations, permutations, accumulate, groupby, product
    from bisect import bisect_left,bisect_right
    from heapq import heapify, heappop, heappush
    from math import floor, ceil
    

    
    

    n = int(input())
    a = list(map(int, input().split()))
    odd = 0
    for i in a:
        if i%2 == 1:
            odd += 1
    if odd%2 == 0:
        print('YES')
    else:
        print('NO')


if __name__ == '__main__':
    main()

Solution (Python):
n = int(input())
a = list(map(int, input().split()))

print("YES") if sum(a) % 2 == 0 else print("NO")

Solution (Python):
n=int(input())
a=list(map(int,input().split()))
if sum(a)%2==0:
  print("YES")
else:
  print("NO")

Solution (Python):
N = int(input())
A = [int(i) for i in input().split()]

odd_count = 0
for i in A:
    if i % 2 == 1:
        odd_count += 1

if odd_count % 2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
n, *a = map(int, open(0).read().split())
print("YNEOS"[sum(a)%2::2])

Solution (Python):
N = int(input())
A=list(map(int,input().split()))
odd=0
for i in range(N):
    if A[i]%2!=0:
        odd = odd+1
if odd % 2==0:
    print('YES')
else:
    print('NO')

Solution (Python):
if __name__ == "__main__":
    n = int(input())
    a = list(map(int, input().split()))

    odd_count = 0
    for aa in a:
        if aa % 2 == 1:
            odd_count += 1

    if odd_count % 2 == 1:
        print('NO')
    else:
        print('YES')

Solution (Python):
def main():
  ans = 'YES'
  n = int(input())
  l = list(map(int, input().split()))
  if sum(l)%2 != 0:
      ans = 'NO'
  print(ans)

if __name__ == '__main__':
  main()

Solution (Python):
def main():
  ans = 'YES'
  n = int(input())
  l = list(map(int, input().split()))
  a = 0
  for i in l:
      if i % 2 != 0:
          a += 1
  if a % 2 != 0:
      ans = 'NO'
  print(ans)

if __name__ == '__main__':
  main()

Solution (Python):
N = int(input())
A = list(map(int,input().split()))

cnt = 0

for i in range(N):
    if A[i] % 2 != 0:
        cnt += 1

if cnt % 2 == 0:
    print("YES")
else:
    print("NO")

Solution (Python):
n = int(input())
A = list(map(int,input().split()))
if sum(A) % 2 == 0:
    print("YES") 
else:
    print("NO")

Solution (Python):
N = int(input())
Ai = list(map(int, input().split()))

gokei = sum(Ai)
if gokei % 2 == 1:
    print('NO')
else:
    print('YES')

Solution (Python):
_, *a = map(int, open(0).read().split())
odd = sum(ai % 2 for ai in a)
print('YNEOS'[odd % 2::2])

Solution (Python):
a=int(input())
li = list(map(int,input().split()))

lis = []
for name in li:
    if name % 2 == 1:
        lis.append(name)
        
if len(lis)%2==0:
    print("YES")
else:
    print("NO")

Solution (Python):
N=int(input())
*A,=map(int,input().split())

B=[0]*N
i=0
while i<N:
    B[i]=A[i]%2
    i+=1

if B.count(1)%2==1 and 2<=N:
    print('NO')

else:
    print('YES')

Solution (Python):
N=int(input())
cnt=len(list(filter(lambda a:a%2==1, map(int,input().split()))))

if cnt%2==0:
    print("YES")
else:
    print("NO")

Solution (Python):
N = int(input())
A = list(map(int,input().split()))
even = 0
odd = 0
for i in range(N):
  if A[i]%2 == 0:
    even += 1
  else:
    odd += 1
if odd%2 == 0:
  print("YES")
else:
  print("NO")

Solution (Python):
n=int(input())
a=list(map(int,input().split()))
m=0
for i in a:
  if i%2==1:
    m+=1
if m%2==0:
  print("YES")
else:
  print("NO")