The recent All-Berland Olympiad in Informatics featured n participants with each scoring a certain amount of points.

As the head of the programming committee, you are to determine the set of participants to be awarded with diplomas with respect to the following criteria:   At least one participant should get a diploma.  None of those with score equal to zero should get awarded.  When someone is awarded, all participants with score not less than his score should also be awarded. 

Determine the number of ways to choose a subset of participants that will receive the diplomas.


-----Input-----

The first line contains a single integer n (1 ≤ n ≤ 100) — the number of participants.

The next line contains a sequence of n integers a_1, a_2, ..., a_{n} (0 ≤ a_{i} ≤ 600) — participants' scores.

It's guaranteed that at least one participant has non-zero score.


-----Output-----

Print a single integer — the desired number of ways.


-----Examples-----
Input
4
1 3 3 2

Output
3

Input
3
1 1 1

Output
1

Input
4
42 0 0 42

Output
1



-----Note-----

There are three ways to choose a subset in sample case one.  Only participants with 3 points will get diplomas.  Participants with 2 or 3 points will get diplomas.  Everyone will get a diploma! 

The only option in sample case two is to award everyone.

Note that in sample case three participants with zero scores cannot get anything.

Difficulty: EASY

Solutions:
n = int(input())
a = list(map(int, input().split()))
freq = [0] * (max(a) + 1)
for i in a:
	freq[i] = 1
print(freq[1:].count(1))


n = int(input())
a = list(map(int, input().split()))
a = list(filter(lambda x: x > 0, a))
print(len(set(a)))


n = int(input())
arr = list(map(int, input().split(' ')))
arr = list(set(arr))
ans = len(arr)
if 0 in arr:
	ans -= 1
print(ans)


n = int(input())
a = list(map(int, input().split()))
no = a.count(0)
while no:
	a.remove(0)
	no -= 1
a = set(a)
print(len(a))


z = int(input())
li = [int(x) for x in input().split()]
li = list(set(li))
for i in li:
	if i == 0:
		li.remove(i)
print(len(li))


n = int(input())
s = {x for x in input().split() if x != '0'}
print(len(s))


n = int(input())
arr = [int(x) for x in input().split()]
if 0 in arr:
	c1 = arr.count(0)
	while c1 != 0:
		arr.remove(0)
		c1 -= 1
	set1 = set(arr)
	print(len(set1))
else:
	set1 = set(arr)
	print(len(set1))


n = int(input())
a = [int(i) for i in input().split()]
x = set()
for elem in a:
	if elem:
		x.add(elem)
print(len(x))


n = int(input())
s = set()
ar = list(map(int, input().split()))
for x in range(n):
	if ar[x] != 0:
		s.add(ar[x])
print(len(s))


n = int(input())
data = list(map(int, input().split()))
res = 0
data.sort()
standard = 0
for i in range(len(data)):
	if data[i] != standard:
		standard = max(data[i], standard)
		res += 1
print(res)


n = int(input())
a = [int(v) for v in input().split()]
print(len(set(a) - set([0])))


n = int(input())
a = set(map(int, input().split()))
s = set()
s.add(0)
a = a.difference(s)
print(len(a))


input()
scores = {int(x) for x in input().split() if x != '0'}
print(len(scores))


n = map(int, input().split())
x = list(map(int, input().split()))
y = set()
for i in x:
	if i != 0:
		y.add(i)
print(len(y))


n = int(input())
l = list(map(int, input().split()))
l.sort()
l1 = list(set(l))
c = 0
for i in range(len(l1)):
	if l1[i] != 0:
		c += 1
	else:
		c += 0
print(c)


import sys
n = int(input())
m = [int(a_temp) for a_temp in input().strip().split(' ')]
count = [0 for i in range(max(m) + 1)]
for i in range(n):
	count[m[i]] += 1
cnt = 0
for i in range(1, len(count)):
	if count[i] != 0:
		cnt += 1
print(cnt)


n = int(input())
a = input().split(' ')
s = set()
for i in a:
	if int(i) > 0:
		s.add(i)
print(len(s))


n = int(input())
l = list(map(int, input().split()))
for i in range(l.count(0)):
	l.remove(0)
a = set(l)
print(len(a))


_ = input()
scores = set(input().split())
if '0' in scores:
	print(len(scores) - 1)
else:
	print(len(scores))


n = int(input())
s = input().split()
s = [int(i) for i in s]
s = set(s)
if 0 in s:
	s.remove(0)
print(len(s))


n = input()
a = set(input().split(' '))
a.discard('0')
print(len(a))


n = int(input())
ar = [int(x) for x in input().split(' ')]
ar = set(ar)
c = 0
for i in ar:
	if i > 0:
		c += 1
print(c)


n = int(input())
a = input().split()
lista = list()
for c in range(0, n):
	if len(lista) == 0 and int(a[c]) != 0:
		lista.append(int(a[c]))
	elif int(a[c]) not in lista and int(a[c]) != 0:
		lista.append(int(a[c]))
print(len(lista))


n = input()
s = set(input().split())
s.discard('0')
print(len(s))


n = int(input())
s = set(map(int, input().split()))
if 0 in s:
	print(max(0, len(s) - 1))
else:
	print(len(s))


input()
s = sorted(map(int, input().split()))
l = 0
j = -1
for n in s:
	if n != 0 and n != j:
		j = n
		l += 1
print(l)


input()
print(len(set(input().split()) - {'0'}))


n = input()
l = list(map(int, input().split()))
k = []
for i in l:
	if i not in k and i != 0:
		k.append(i)
print(len(k))


n = int(input())
inp = list(map(int, input().split()))
from collections import Counter
c = Counter(inp)
if 0 in c.keys():
	print(len(c.keys()) - 1)
else:
	print(len(c.keys()))


def main():
	n = int(input())
	scores = list(map(int, input().strip().split()))
	dist_scores = set(scores)
	if 0 in dist_scores:
		print(len(dist_scores) - 1)
	else:
		print(len(dist_scores))
main()


n = int(input())
s = list(map(int, input().split()))
s = sorted(set(s))
if s[0] == 0:
	print(len(s) - 1)
else:
	print(len(s))


N = int(input())
LISTA = input().split(' ')
LISTA.sort()
N = len(LISTA)
while LISTA[0] == '0':
	LISTA.remove('0')
LISTA = list(set(LISTA))
print(len(LISTA))


n = int(input())
A = [*map(int, input().split())]
count = 0
S = set(A)
if 0 in S:
	S.remove(0)
print(len(S))


n = int(input())
points = list(map(int, input().split()))
unique_points = []
for element in points:
	if element not in unique_points and element != 0:
		unique_points.append(element)
print(len(unique_points))


size = int(input())
arr = list(map(int, input().split(' ')))
arr = list(set(arr))
print(len([i for i in arr if i != 0]))


n = int(input())
m = {}
line = list(map(int, input().split()))
for i in line:
	if i != 0:
		m[i] = 1
print(len(m))


input()
s = list(set(list(map(int, input().split()))))
if 0 in s:
	print(len(s) - 1)
else:
	print(len(s))


participantes = input()
pontuacao = input().split()
lista = []
for valor in pontuacao:
	if valor not in lista and valor != '0':
		lista.append(valor)
print(len(lista))


from collections import Counter
n = int(input())
arr = list(map(int, input().split()))
counter = Counter(arr)
if counter[0] > 0:
	print(len(counter) - 1)
else:
	print(len(counter))


def removeAllBasic(term, l):
	while term in l:
		l.remove(term)
n = int(input())
psco = [int(i) for i in input().split(' ')]
count = 0
if max(psco) != 0:
	while max(psco) != 0:
		count += 1
		removeAllBasic(max(psco), psco)
		if psco == []:
			break
print(count)


input()
a = list(map(int, input().split()))
a = list(set(a))
s = 0
for i in a:
	if i != 0:
		s = s + 1
print(s)


n = int(input())
a = [int(x) for x in input().split()]
b = set(a)
if 0 in b:
	b.remove(0)
print(len(b))


a = []
for i in range(600):
	a.append(0)
n = int(input())
inp = input().split()
for i in inp:
	if int(i) != 0:
		a[int(i) - 1] += 1
print
cnt = 0
for i in a:
	cnt += 0 if i == 0 else 1
print(cnt)


x = int(input())
y = [int(i) for i in input().split() if i != '0']
z = set(y)
print(len(z))


n = int(input())
li = list(map(int, input().split()))
li.sort()
for i in range(len(li)):
	if li[i] > 0:
		k = i
		break
print(len(set(li[i:])))


n = int(input())
c = list(map(int, input().strip().split()))[:n]
d = set(c)
l = len(d)
if 0 in d:
	print(l - 1)
else:
	print(l)


n = int(input())
scores = []
[scores.append(int(i)) for i in input().split()]
scores = sorted(set(scores))[::-1]
for i in range(len(scores) - 1, -1, -1):
	if scores[i] != 0:
		break
	else:
		scores.pop(i)
print(len(scores))


n = int(input())
d = set(map(int, input().split()))
if 0 in d:
	print(len(d) - 1)
else:
	print(len(d))


a = int(input())
b = input().split()
d = {}
for i in range(a):
	if b[i] not in d and b[i] != '0':
		d[b[i]] = i
print(len(d))


n = int(input())
vals = set([int(x) for x in input().split()]) - set([0])
print(len(vals))


def main():
	input()
	scores = [int(_) for _ in input().split()]
	scores = list(filter(lambda a: a > 0, scores))
	result = len(list(dict.fromkeys(scores)))
	print(result)
main()


n = int(input())
nums = set(map(int, input().strip().split()))
if 0 in nums:
	print(len(nums) - 1)
else:
	print(len(nums))


n = int(input())
l = list(map(int, input().split()))
s = list(set(l))
s.sort()
c = 0
for i in s:
	if i > 0:
		c = c + 1
print(c)


n = int(input())
a = list(map(int, input().split()))
dic = {}
for x in a:
	if x > 0:
		dic[x] = 1
print(len(dic))


n = input()
ppls = list(map(int, input().split()))
if min(ppls) == max(ppls):
	print(1)
else:
	ways = set(ppls)
	if 0 in ways:
		print(len(ways) - 1)
	else:
		print(len(ways))


a = input()
s = set((x for x in map(int, input().split()) if x > 0))
print(len(s))


n = int(input())
a = list(map(int, input().split()))
a = list(set(a))
a.sort()
x = len(a)
if a[0] == 0:
	x -= 1
print(x)


GI = lambda : int(input())
GIS = lambda : map(int, input().split())
LGIS = lambda : list(GIS())
from collections import Counter

def main():
	n = GI()
	c = Counter(filter(None, GIS()))
	print(len(c))
main()


n = int(input())
myList = list(map(int, input().split()))
mySet = set()
for i in range(0, len(myList)):
	if myList[i] not in mySet and myList[i] != 0:
		mySet.add(myList[i])
print(len(mySet))


from collections import Counter
n = int(input())
a = Counter(list(map(int, input().split())))
print(sum((1 for (k, v) in a.items() if k)))


import sys
input = sys.stdin.readline
n = int(input())
a = [int(i) for i in input().split()]
res = [int(i) for i in a if i > 0]
print(len(set(res)))


n = int(input())
po = list(map(int, input().split()))
c = 0
for item in list(set(po)):
	if item > 0:
		c += 1
	else:
		pass
print(c)


n = int(input())
a = list(map(int, input().split()))
if 0 in set(a):
	print(len(set(a)) - 1)
else:
	print(len(set(a)))


n = int(input())
a = list(map(int, input().split()))
c = []
for i in range(len(a)):
	if a[i] != 0:
		c.append(a[i])
a = list(set(c))
a = sorted(a)
print(len(a))


n = int(input())
l = [int(x) for x in input().split(' ')]
l.sort()
l1 = []
c = 0
for i in l:
	if i not in l1 and i != 0:
		l1.append(i)
		c += 1
print(c)


n = int(input())
l = [int(i) for i in input().split()]
s = set(l)
if 0 in s:
	print(len(s) - 1)
else:
	print(len(s))


n = int(input())
a = list(map(int, input().split()))
print(len(set(a) - {0}))


a = input()
print(len(set([int(c) for c in input().split() if int(c) != 0])))


number = int(input())
scoreArray = list(map(int, input().split()))
A = set(scoreArray)
ans = 0
for i in A:
	if i == 0:
		continue
	else:
		ans += 1
print(ans)


n = int(input())
bals = set(list(map(int, input().split())))
print(len(bals.difference(set([0]))))


input()
a = map(int, input().split())
unique = set(a)
result = len(unique - {0})
print(result)


n = int(input())
ar = set(map(int, input().split()))
ar.discard(0)
print(len(ar))


n = int(input())
scores = input().split()
scores = [int(x) for x in scores if x != '0']
scores.sort()
temp = -1
count = 0
for x in scores:
	if x > temp:
		count += 1
		temp = x
print(count)


n = int(input())
d = {int(i): int(i) for i in input().split() if i != '0'}
print(len(d))


n = int(input())
a = list(map(int, input().strip().split(' ')))
count = 0
m = set(a)
t = list(m)
for i in range(len(t)):
	if t[i] > 0:
		count += 1
print(count)


n = int(input())
l = set(map(int, input().split()))
l.discard(0)
print(len(l))


(n, l, s) = (int(input()), list(map(int, input().split())), set())
for i in l:
	s.add(i)
print(len(s) - 1 if 0 in s else len(s))


input()
l = set([int(x) for x in input().split()])
if 0 in l:
	print(len(l) - 1)
else:
	print(len(l))


t = int(input())
s = set()
for i in input().split():
	if int(i) != 0:
		s.add(i)
ans = len(s)
print(ans)


n = int(input())
a = [int(x) for x in input().split()]
if 0 not in a:
	print(len(set(a)))
else:
	print(len(set(a)) - 1)


a = int(input())
b = input().split()
for i in range(len(b)):
	b[i] = int(b[i])
while 1 > 0:
	if int(b.count(int(0))) == 0:
		break
	else:
		b.remove(int(0))
b = list(set(b))
print(int(len(b)))


a = int(input(''))
b = list(map(int, input().split()))
t = []
p = 0
l = 0
z = []
for i in range(a):
	if not b[p] == 0:
		t.append(b[p])
	p = p + 1
for jk in range(len(t)):
	if not t[l] in z:
		z.append(t[l])
	l = l + 1
print(len(z))


n = int(input())
l = list(map(int, input().split()))
(c, l1) = (0, [])
for i in range(n):
	if l[i] not in l1:
		if l[i] > 0:
			c += 1
			l1.append(l[i])
print(c)


n = int(input())
a = set(map(int, input().split()))
ln = len(a)
if 0 in a:
	ln -= 1
print(ln)


def solve(n, a):
	x = set(a)
	a.sort()
	s = len(x)
	if a[0] == 0:
		s -= 1
	return s

def main():
	n = int(input())
	a = list(map(int, input().split()))
	print(solve(n, a))
main()


x = int(input())
y = list(map(int, input().split(' ')))
z = list(set(y))
a = 0
if a in z:
	z.remove(a)
print(len(z))


n = int(input())
v = set([int(x) for x in input().split() if int(x) > 0])
print(len(v))


n = int(input())
buckets = [0 for _ in range(601)]
for i in map(int, input().split()):
	buckets[i] = 1
print(sum(buckets[1:]))


n = int(input())
list = set([int(i) for i in input().split()]) - {0}
print(len(list))


import sys

def main():
	n = int(sys.stdin.readline())
	scores = [int(x) for x in sys.stdin.readline().split()]
	scores = list(set(scores) - set([0]))
	scores.sort()
	print(len(scores))
main()


n = int(input())
a = set(map(int, input().split()))
print(len(a) - int(0 in a))


n = int(input())
a = [int(i) for i in input().split()][:n]
nos = []
cnt = 0
for i in range(n):
	if a[i] != 0 and a[i] not in nos:
		nos.append(a[i])
		cnt += 1
print(cnt)


x = int(input())
a = list(map(int, input().split()))
count = 0
for i in range(len(a)):
	if 0 in a:
		count = count + 1
if count:
	print(len(set(a)) - 1)
else:
	print(len(set(a)))


a = int(input())
i = 0
s = []
b = list(map(int, input().split()))
s1 = list(set(b))
q = s1.count(0)
if q != 0:
	s1.remove(0)
print(len(s1))


n = int(input())
l = list(map(int, input().split()))
l = list(filter(lambda l: l != 0, l))
print(len(set(l)))


n = input()
n = int(n)
notas = list(map(int, input().split()))
notas = list((i for i in notas if i != 0))
poss = []
for i in notas:
	if i != 0:
		if i not in poss:
			poss.append(i)
print(len(poss))


n = int(input())
notas = [*map(int, input().split())]
unic = set(notas)
filtrado = [e for e in unic if e != 0]
print(len(filtrado))


import sys
n = int(input())
a = list(map(int, input().split()))
d = {}
for i in a:
	if i > 0:
		d[i] = True
print(len(d))


a = int(input())
b = list(map(int, input().split()))
c = set(b)
if 0 in set(c):
	c.remove(0)
print(len(c))


n = int(input())
x = []
x = list(map(int, input().split()))
x.sort()
x = set(x)
if 0 in x:
	print(len(x) - 1)
else:
	print(len(x))


n = int(input())
arr = [int(i) for i in input().strip().split()]
d = {}
d[0] = 1
for i in arr:
	d[i] = 1
print(len(d) - 1)


n = int(input())
x = []
for i in input().split():
	z = int(i)
	if z > 0:
		x.append(z)
x = set(x)
print(len(x))


n = int(input())
li = list(map(int, input().split()))
li = list(set(li))
c = 0
for i in li:
	if i != 0:
		c += 1
print(c)


num = int(input())
diploma = [int(a) for a in input().split(' ')]
duplicate = set()
for x in diploma:
	if x != 0:
		duplicate.add(x)
print(len(duplicate))


n = int(input())
a = [int(x) for x in input().split()]
s = set(a)
l = 0
if 0 in s:
	print(len(s) - 1)
else:
	print(len(s))


n = int(input())
x = set(list(map(int, input().split())))
if 0 in x:
	x.remove(0)
print(len(x))


def P(n):
	res = 1
	for i in range(1, n + 1):
		res *= i
	return res

def A(n, k):
	res = 0
	return P(n) / P(n - k)

def C(n, k):
	return int(P(n) / (P(n - k) * P(k)))
a = input()
b = [int(i) for i in input().split() if i != '0']
c = set(b)
print(len(c))


n = int(input())
a = set(map(int, input().split()))
if 0 in a:
	a.remove(0)
print(len(a))


n = int(input())
scores = list(map(int, input().split(' ')))
scores = [ele for ele in scores if ele != 0]
way = 0
if len(scores) == 0:
	print('0')
elif len(set(scores)) == 1:
	print('1')
else:
	while len(scores) >= 1:
		way += 1
		scores = [ele for ele in scores if ele != max(scores)]
	print(way)


n = int(input())
seq = input().split()
numbers = []
for s in seq:
	numbers.append(int(s))
numbers = set(numbers)
ans = 0
for number in numbers:
	if number > 0:
		ans += 1
print(ans)


t = int(input())
a = list(map(int, input().strip().split(' ')))
s = set(a)
if 0 in s:
	print(len(s) - 1)
else:
	print(len(s))


n = int(input())
arr = list(map(int, input().split()))
freq = [0] * 602
for i in arr:
	freq[i] += 1
c = 0
for i in range(1, 602):
	if freq[i] != 0:
		c += 1
print(c)


input()
res = 0
rates = list(set(map(int, input().split())))
rates.sort()
for p in rates:
	if p > 0:
		res += 1
print(res)


n = int(input())
a = [int(s) for s in input().split(' ')]
answer = len(set([x for x in a if x]))
print(answer)


a = input()
s = input().split()
d = []
for i in s:
	if i not in d:
		d.append(i)
if '0' in d:
	print(len(d) - 1)
else:
	print(len(d))


n = int(input())
li = list(map(int, input().split()))
ni = set(li)
n1 = list(ni)
if 0 in n1:
	n1.remove(0)
print(len(n1))


x = input()
y = set(map(int, input().split()))
if 0 in y:
	print(len(y) - 1)
else:
	print(len(y))


n = int(input())
a = [int(i) for i in input().split()]
z = 0
a = list(set(a))
ans = 0
for i in a:
	if i != 0:
		ans += 1
print(ans)


_ = input()
a = []
for i in input().split():
	if int(i) > 0 and int(i) not in a:
		a.append(int(i))
print(len(a))


n = int(input())
l = list(map(int, input().split()))
d = {}
for i in l:
	if i != 0:
		if i in d:
			d[i] += 1
		else:
			d[i] = 1
print(len(d))


n = int(input())
x = list(map(int, input().split(' ')))
z = sorted(x, reverse=True)
a = set(z)
if 0 in a:
	a.remove(0)
print(len(a))


n = int(input())
a = list(map(int, input().split()))
a.sort()
t = set(a)
if a[0] == 0:
	m = len(t) - 1
else:
	m = len(t)
print(m)


N = int(input())
L = list(map(int, input().split(' ')))
S = list(set(L))
S = list(filter(0 .__ne__, S))
print(len(S))


n = int(input())
a = [int(i) for i in input().split()]
a.sort()
i = 0
k = 0
while i <= n and a[i] == 0:
	i += 1
else:
	while i < n:
		if a[i] != a[i - 1]:
			k += 1
		i += 1
if k == 0:
	print(k + 1)
else:
	print(k)


n = int(input())
l = list(map(int, input().split()))[:n]
new = []
for item in l:
	if item not in new:
		new.append(item)
count = 0
for u in new:
	if u == 0:
		new.remove(0)
print(len(new))


n = int(input())
val = list(map(int, input().split()))
while n:
	s = []
	while n:
		for i in val:
			if i > 0:
				s.append(i)
		n = n - 1
	x = set(s)
	print(len(x))


N = int(input())
l = [int(x) for x in input().split()]
lis = []
for elt in l:
	if elt not in lis and elt != 0:
		lis.append(elt)
print(len(lis))


n = int(input())
a = list(map(int, input().split()))
my_set = set({})
for x in a:
	if x != 0:
		my_set.add(x)
print(len(my_set))


import logging
fmt = '%(levelname)s - %(name)s (line:%(lineno)s) - %(message)s'
formatter = logging.Formatter(fmt)
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)
ch.setFormatter(formatter)
logger = logging.getLogger('olympiad')
logger.setLevel(logging.DEBUG)
logger.addHandler(ch)

def solve(sequence):
	s = set(sequence)
	s.discard(0)
	return len(s)

def main():
	_ = int(input().strip())
	sequence = [int(x) for x in input().strip().split()]
	result = solve(sequence)
	print(result)
main()


n = map(int, input())
a = map(int, input().split())
b = set((i for i in a if i > 0))
print(len(b))


n = int(input())
b = input().split(' ')
c = []
x = 0
for i in range(0, n):
	if int(b[i]) > 0 and c.count(b[i]) == 0:
		x += 1
		c.append(b[i])
print(x)


n = int(input())
a = [int(i) for i in input().split()]
l = []
for i in range(0, n):
	if a[i] != 0:
		l.append(a[i])
print(len(set(l)))


n = int(input())
a = input().split()
b = sorted(a)
p = 0
q = 0
for i in range(1, n):
	if b[i] != b[i - 1]:
		p += 1
if b[0] == '0':
	print(p)
else:
	print(p + 1)


n = int(input())
a = [int(x) for x in input().split(' ')]
s = set(a)
s.discard(0)
print(len(s))


n = map(int, input().split())
seq = list(map(int, input().split(' ')))
print(len(set(seq) - {0}))


n = int(input())
participant = [int(i) for i in input().split()]
arr = []
i = 0
while i < len(participant):
	if participant[i] != 0:
		arr.append(participant[i])
	i += 1
a = set(arr)
print(len(a))


n = int(input())
s = input().split()
l = []
for i in s:
	if i != '0' and i not in l:
		l.append(i)
print(len(l))


input()
print(len(set((x for x in map(int, input().split()) if x))))


c = 0
a = int(input())
b = list(map(int, input().split()))
b = list(dict.fromkeys(b))
for i in range(len(b)):
	if b[i] != 0:
		c += 1
print(c)


p = int(input())
x = [int(i) for i in input().split()]
v = sorted(set(x))
if v[0] == 0:
	print(len(v) - 1)
else:
	print(len(v))


n = int(input())
ls = list(set(map(int, input().split())))
ls.sort()
cnt = 0
for i in ls:
	if i != 0:
		cnt += 1
print(cnt)


n = int(input())
l = list(map(int, input().split()))
l = set(l)
count = 0
for i in l:
	if i != 0:
		count += 1
print(count)


(_, numbers) = (input(), set(input().split()))
print(len(numbers) - ('0' in numbers))


n = int(input())
a = list(map(int, input().split()))
mp = []
for i in a:
	if i not in mp and (not i == 0):
		mp.append(i)
print(len(mp))


n = int(input())
arr = [int(j) for j in input().split()]
arr.sort()
count = 1
for i in range(n - 1):
	if arr[i] != arr[i + 1]:
		count += 1
if 0 in arr:
	count -= 1
print(count)


x = int(input())
l = list(map(int, input().split()))
l.sort()
l = list(set(l))
if l.count(0) > 0:
	l.remove(0)
print(len(l))


n = int(input())
arr = [int(i) for i in input().split(' ')]
print(len(list(filter(lambda x: x != 0, set(arr)))))


n = int(input())
a = [int(x) for x in input().split()]
mas = []
for i in a:
	b = i in mas
	if b == False and i != 0:
		mas.append(i)
print(len(mas))


n = int(input())
points = [int(i) for i in input().split()]
for i in range(points.count(0)):
	points.remove(0)
print(len(set(points)))


i = int(input())
test = list(map(int, input().split()))
li = []
for i in test:
	if i not in li and i != 0:
		li.append(i)
print(len(li))


n = int(input())
l = list(map(int, input().split()))
l = list(set(l))
x = []
for i in range(len(l)):
	if l[i] != 0:
		x.append(l[i])
print(len(x))


n = int(input())
array = set([int(x) for x in input().split(' ')])
res = len(array)
if 0 in array:
	print(res - 1)
else:
	print(res)


n = int(input())
l = list(map(int, input().split()))
s = list(set(l))
ans = len(s)
ss = set(l)
if 0 in ss:
	ans = ans - 1
print(ans)


n = int(input())
a = [int(x) for x in input().split()]
ans = 0
b = []
for i in a:
	if i not in b and i != 0:
		b.append(i)
print(len(b))


n = int(input(''))
m = input('')
lst = []
l = m.split()
l.sort()
for k in l:
	k = int(k)
	lst.append(k)
lst.sort()
c = 1
for i in range(len(lst) - 1):
	if lst[i] != 0 and lst[i] != lst[i + 1]:
		c += 1
print(c)


input()
a = list(map(int, input().split()))
k = []
for i in range(len(a)):
	if a[i] in k:
		s = 1
	elif a[i] != 0:
		k.append(a[i])
print(len(k))


n = input()
l = set([x for x in map(int, input().split()) if x > 0])
print(len(l))


n = int(input())
x = list(map(int, input().split()))
x.sort(reverse=True)
i = 0
count = 1
while i < n and x[i] != 0:
	if i >= 1 and x[i] != x[i - 1]:
		count += 1
	i += 1
print(count)


inp = input()
a = []
for i in input().split():
	if int(i) != 0:
		a.append(int(i))
b = set(a)
print(len(b))


n = int(input())
lis = [int(i) for i in input().split()]
way = set()
for i in lis:
	if i != 0:
		way.add(i)
print(len(way))


n = int(input())
l = list(map(int, input().split()))
s = set(l)
if 0 in s:
	s.remove(0)
print(len(s))


n = int(input())
s = list(map(int, input().split()))
r = 0
for x in sorted(list(set(s))):
	if x != 0:
		r += 1
print(r)


n = int(input())
s = list(map(int, input().split()))
while 0 in s:
	s.remove(0)
print(len(set(s)))


input()
print(len(set((x for x in input().split() if x != '0'))))


a = int(input())
b = list(map(int, input().split()))
while b.count(0) != 0:
	b.remove(0)
b = set(b)
print(len(b))


n = int(input())
ls = input()
ls = ls.split(' ')
ls = [int(x) for x in ls]
count = 0
if 0 in ls:
	count = -1
ls = set(ls)
print(count + len(ls))


n = int(input())
a = list(map(int, input().split()))
s = set()
for i in range(0, n):
	if a[i] != 0:
		s.add(a[i])
print(len(s))


n = int(input())
a = list(map(int, input().split()))
a.sort()
count = 0
if a[0] != 0:
	count += 1
for i in range(1, n):
	if a[i - 1] != a[i]:
		count += 1
print(count)


a = int(input())
b = list(map(int, input().split()))
r = b.count(0)
while r > 0:
	b.remove(0)
	r -= 1
t = set(b)
print(len(t))


n = int(input())
a = list(map(int, input().split()))
a = set(a)
a = list(a)
zero = a.count(0)
print(len(a) - zero)


n = int(input())
print(len(set(input().split()) - {'0'}))


def olympiada(lst):
	a = list()
	if 0 not in lst:
		return len(set(lst))
	for elem in lst:
		if elem != 0:
			a.append(elem)
	return len(set(a))
n = int(input())
b = [int(i) for i in input().split()]
print(olympiada(b))


n = int(input())
scores = list(map(int, input().split()))
no_of_ways = 0
for i in range(len(scores) - 1):
	for j in range(len(scores) - 1):
		if scores[j] > scores[j + 1]:
			(scores[j], scores[j + 1]) = (scores[j + 1], scores[j])
for i in range(len(scores) - 1):
	if scores[i] != 0 and scores[i] != scores[i + 1]:
		no_of_ways += 1
print(no_of_ways + 1)


n = int(input())
dict = {}
scores = list(map(int, input().split()))
for s in scores:
	if s not in dict.keys():
		dict[s] = 0
	else:
		dict[s] = dict[s] + 1
out = len(dict)
if 0 in dict.keys():
	out -= 1
print(out)


n = int(input())
l = set(map(int, input().split()))
c = 0
for i in l:
	if i != 0:
		c += 1
print(c)


n = int(input())
A = list(map(int, input().split()))
A = set(A)
res = len(A)
for i in A:
	if not i:
		res -= 1
print(res)


se = set()
n = input()
li = map(int, input().split())
for i in li:
	if i:
		se.add(i)
print(len(se))


n = int(input())
line = input().split(' ')
a = []
for i in range(n):
	a.append(int(line[i]))
b = set(a)
sum1 = 0
c = list(b)
for i in range(len(c)):
	if c[i] != 0:
		sum1 = sum1 + 1
print(sum1)


x = int(input())
y = input().split()
z = [int(i) for i in y]
m = []
a = 0
for i in range(x):
	if z[i] != 0 and z[i] not in m:
		a += 1
		m.append(z[i])
print(a)


n = int(input())
a = set(input().split())
ans = len(a)
if '0' in a:
	ans -= 1
print(ans)


import math, string, itertools, fractions, heapq, collections, re, array, bisect, sys, random, time, copy, functools
sys.setrecursionlimit(10 ** 7)
inf = 10 ** 20
eps = 1.0 / 10 ** 10
mod = 10 ** 9 + 7
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]

def LI():
	return [int(x) for x in sys.stdin.readline().split()]

def LI_():
	return [int(x) - 1 for x in sys.stdin.readline().split()]

def LF():
	return [float(x) for x in sys.stdin.readline().split()]

def LS():
	return sys.stdin.readline().split()

def I():
	return int(sys.stdin.readline())

def F():
	return float(sys.stdin.readline())

def S():
	return input()

def pf(s):
	return print(s, flush=True)

def main():
	n = I()
	c = collections.Counter(LI())
	r = len(c)
	if c[0] > 0:
		r -= 1
	return r
print(main())


n = input()
s_set = {int(val) for val in input().split() if not int(val) == 0}
print(len(s_set))


B = [0] * 601
n = int(input())
k = 0
A = list(map(int, input().split()))
for i in A:
	if i != 0 and B[i] == 0:
		B[i] = 1
		k += 1
print(k)


from collections import Counter
n = int(input())
a = list(map(int, input().split()))
ans = 0
for i in range(1, 601):
	ans += a.count(i) > 0
print(ans)


import random
n = int(input())
score = set(list(map(int, input().split())))
if 0 in score:
	score.remove(0)
print(len(score))


(n, k) = (int(input()), 0)
l = set(map(int, input().split()))
if 0 in l:
	k = 1
print(len(l) - k)


def n_subsets():
	n = int(input())
	l = map(int, input().split(' '))
	diff = set(l)
	if 0 in diff:
		print(len(diff) - 1)
	else:
		print(len(diff))
n_subsets()


for _ in range(1):
	n = int(input())
	l = list(set(map(int, input().split())))
	if 0 in l:
		print(len(l) - 1)
	else:
		print(len(l))


n = int(input())
l = list(map(int, input().split()))
s = list(set(l))
le = len(s)
if 0 in s:
	le -= 1
print(le)


n = int(input())
arr = input().split()
arr = list(set(arr))
if '0' in arr:
	arr.remove('0')
print(len(arr))


n = int(input())
points = set(map(int, input().split()))
points.discard(0)
print(len(points))


n = int(input())
l = list(map(int, input().split()))
l1 = list(set(l))
if 0 in l1:
	print(len(l1) - 1)
else:
	print(len(l1))


n = int(input())
scores = list(map(int, input().split()))
if 0 in scores:
	for i in range(scores.count(0)):
		scores.remove(0)
scores = set(scores)
print(len(scores))


import sys

def main():
	pass

def binary(n):
	return bin(n).replace('0b', '')

def decimal(s):
	return int(s, 2)

def pow2(n):
	p = 0
	while n > 1:
		n //= 2
		p += 1
	return p

def isPrime(n):
	if n == 1:
		return False
	else:
		root = int(n ** 0.5)
		root += 1
		for i in range(2, root):
			if n % i == 0:
				return False
		return True

def lts(l):
	s = ''.join(map(str, l))
	return s

def stl(s):
	l = list(s)
	return l

def sq(a, target, arr=[]):
	s = sum(arr)
	if s == target:
		return arr
	if s >= target:
		return
	for i in range(len(a)):
		n = a[i]
		remaining = a[i + 1:]
		ans = sq(remaining, target, arr + [n])
		if ans:
			return ans
mod = int(1000000000.0) + 7

def ssinp():
	return sys.stdin.readline().strip()

def iinp():
	return int(input())

def nninp():
	return map(int, sys.stdin.readline().strip().split())

def llinp():
	return list(map(int, sys.stdin.readline().strip().split()))

def p(xyz):
	print(xyz)

def p2(a, b):
	print(a, b)
import math
from collections import OrderedDict
from fractions import Fraction
n = iinp()
a = list(map(int, input().split()))
x = set(a)
if 0 in x:
	print(len(x) - 1)
else:
	print(len(x))


n = input()
scores = list(map(int, input().split()))
ways = set()
for i in scores:
	if i > 0:
		ways.add(i)
print(len(ways))


n = int(input())
a = [int(q) for q in input().strip().split()]
a = set(a)
if 0 in a:
	a.pop()
print(len(a))


def main():
	n = int(input())
	vals = [int(v) for v in input().split()]
	vals.sort()
	vals = [v for v in vals if v != 0]
	print(len(set(vals)))
main()


n = int(input())
A = list(map(int, input().split()))
B = []
cnt = 0
for q in range(1000):
	B.append(0)
for q in range(n):
	if A[q] == 0 or B[A[q]] == 1:
		cnt += 1
	else:
		B[A[q]] = 1
print(n - cnt)


N = int(input())
s = list(map(int, input().split()))
x = [None] * 605
cnt = 0
for i in range(N):
	c = s[i]
	if c:
		x[c] = 1
for i in range(1, 601):
	if x[i] == 1:
		cnt += 1
print(cnt)


participants = input()
numbers = input().split()
numbers = sorted(numbers)
solutions = 0
list_with_no_zeros = []
counter = 1
for num in numbers:
	if num != '0':
		list_with_no_zeros.append(num)
list_with_no_zeros = sorted(list_with_no_zeros)
if list_with_no_zeros[0] == list_with_no_zeros[len(list_with_no_zeros) - 1]:
	solutions = 1
else:
	solutions = 1
	for num in list_with_no_zeros:
		if counter > len(list_with_no_zeros) - 1:
			break
		elif num != list_with_no_zeros[counter]:
			solutions += 1
		counter += 1
print(solutions)


n = int(input().strip())
arr = [int(__) for __ in input().strip().split()]
s = set(arr) - {0}
print(len(s))


n = int(input())
lst = [int(x) for x in input().split()]
lst1 = [i for i in lst if i != 0]
print(len(set(lst1)))


def CF937A():
	n = int(input(''))
	a = set()
	found_zero = False
	x = input('').split(' ')
	for v in x:
		v = int(v)
		if v not in a:
			a.add(v)
	if 0 in a:
		print(len(a) - 1)
	else:
		print(len(a))
CF937A()


n = int(input())
q = set([int(x) for x in input().split()])
q.discard(0)
print(len(q))


n = int(input())
l = [*map(int, input().split())]
r = set(l)
if 0 in l:
	r.remove(0)
print(len(r))


N = int(input())
a = [int(x) for x in input().split() if int(x) != 0]
print(len(set(a)))


input()
print(len({x: 1 for x in input().split() if x != '0'}))


t = int(input())
a = [int(i) for i in input().split()]
a = set(a)
if 0 in a:
	print(len(a) - 1)
else:
	print(len(a))


n = int(input())
a = []
a = list(map(int, input().split(' ')[:n]))
temp = 0
if a.count(0) >= 1:
	temp = 1
print(len(set(a)) - temp)


n = int(input())
a = list(map(int, input().split()))[:n]
d = {}
for x in a:
	if x > 0:
		d.setdefault(x)
print(len(d))


n = int(input())
result = 0
cset = map(int, input().split())
nset = []
cset = list(set(cset))
for i in range(0, len(cset)):
	if cset[i] == 0:
		continue
	else:
		nset.append(cset[i])
print(len(nset))


i = int(input())
scores = list(map(int, input().split()))
agg = {}
for s in scores:
	if s == 0:
		continue
	agg[s] = agg.get(s, 0) + 1
print(len(agg))


n = int(input())
a = list(map(int, input().split()))
d = set(a)
e = list(d)
if 0 in e:
	e.remove(0)
print(len(e))


n = int(input())
a = list(map(int, input().split()))
b = []
for i in range(n):
	if a[i - 1] > 0:
		if a[i - 1] not in b:
			b.append(a[i - 1])
print(len(b))


n = int(input())
l = set(map(int, input().split(' ')))
try:
	l.remove(0)
except:
	pass
print(len(l))


n = int(input())
myArray = list(map(int, input().split()))
myMap = dict()
for i in range(len(myArray)):
	if myArray[i] != 0:
		if myMap.get(myArray[i]) == None:
			myMap[myArray[i]] = 1
		else:
			myMap[myArray[i]] += 1
print(len(myMap))


n = int(input())
a = list(map(int, input().split()))
un = 0
a.sort()
for i in range(n):
	if a[i] > 0 and (i == 0 or a[i] > a[i - 1]):
		un += 1
print(un)


n = int(input())
li = list([int(x) for x in input().split()])[:n]
for i in range(len(li)):
	if 0 in li:
		li.remove(0)
s = set()
for elem in li:
	if elem not in s:
		s.add(elem)
print(len(s))


n = int(input())
marks = list(map(int, input().split()))
m = set()
for i in range(0, len(marks)):
	if marks[i] != 0:
		m.add(marks[i])
print(len(m))


n = input()
arr_zero = input().split()
arr = list(filter(lambda x: x != '0', arr_zero))
print(len(set(arr)))


n = int(input())
a = [int(num) for num in input().split()]
arr = list(filter(lambda n: n > 0, a))
c = 1
arr.sort()
for i in range(len(arr) - 1):
	if arr[i] != arr[i + 1]:
		c = c + 1
print(c)


t = int(input())
a = [int(k) for k in input().split()]
uni = 0
a.sort()
for j in range(0, t):
	if j == 0 and a[j] != 0:
		uni += 1
	elif j != 0:
		if a[j] != a[j - 1]:
			uni += 1
print(uni)


n = int(input())
scores = {int(x) for x in input().split() if int(x) != 0}
jeitos = len(scores)
print(jeitos)


test_case = int(input())
list1 = map(int, input().split())
set_ = set(list1)
count = 0
for i in set_:
	if i == 0:
		continue
	else:
		count = count + 1
print(count)


n = int(input())
lst = []
lst1 = []
lst = input().split(' ')
a = 0
b = 0
c = 0
d = 0
z = 0
for i in lst:
	lst1.append(int(i))
lst2 = list(set(lst1))
if 0 in lst2:
	lst2.remove(0)
if len(lst2) > 3:
	print(len(lst2))
else:
	if 3 in lst2:
		a += 1
	if 2 in lst2:
		z += 1
	if 1 in lst2:
		c += 1
	for i in lst2:
		if i > 3:
			d += 1
	print(a + c + d + z)


input()
s = set(input().split(' '))
if '0' in s:
	print(len(s) - 1)
else:
	print(len(s))


n = int(input())
k = [int(n) for n in input().split()]
k.sort()
previous = []
for q in range(0, len(k)):
	if k[q] not in previous and k[q] != 0:
		previous.append(k[q])
print(len(previous))


n = int(input())
l = list(map(int, input().split()))
s = set(l)
l1 = list(s)
a = l1.count(0)
if a == 0:
	print(len(l1))
else:
	print(len(l1) - 1)


members = int(input())
quantity = list(map(int, input().split(' ')))
quantity.sort()
means = 0
if members != len(quantity):
	print('Lmao WTF are you doing?')
if quantity[0] > 0:
	means = 1
for i in range(0, len(quantity) - 1):
	if quantity[i] < quantity[i + 1]:
		means = means + 1
print(means)


n = int(input())
m = set(map(int, input().split()))
for i in m:
	if i == 0:
		m.remove(0)
		break
print(len(m))


n = int(input())
a = [int(x) for x in input().split()]
lst = []
for i in range(len(a)):
	if a[i] not in lst and a[i] != 0:
		lst.append(a[i])
print(len(lst))


n = int(input())
points = list(map(int, input().split(' ')))
a = points.count(0)
if a == 0:
	b = set(points)
	print(len(b))
else:
	for i in range(a):
		points.remove(0)
	b = set(points)
	print(len(b))


n = int(input())
scores = set(map(int, input().strip().split(' ')))
if 0 in scores:
	scores.remove(0)
print(len(scores))


n = int(input())
scores = list(map(int, input().split()))
count = 0
scores = set(scores)
for k in scores:
	if k != 0:
		count = count + 1
print(count)


from collections import Counter
n = int(input())
a = list(map(int, input().split()))
b = []
for i in a:
	if i == 0:
		continue
	b.append(i)
print(len(Counter(b).most_common()))


def subsetCount(arr):
	return len(list(filter(lambda x: x > 0, list(set(arr)))))
n = int(input())
arr = list(map(int, input().split()))
print(subsetCount(arr))


input()
a = set(list(map(int, input().split())))
a = list(a)
print(len(a) - a.count(0))


import itertools
n = int(input())
num = [int(i) for i in input().split()]
num = [i[0] for i in list(itertools.groupby(sorted(num)))]
if num[0] == 0:
	num = num[1:]
print(len(num))


n = int(input())
a = [int(i) for i in input().split(' ')]
a = set(a)
a = list(a)
count = 0
for i in a:
	if i != 0:
		count = count + 1
print(count)


def main():
	N = int(input())
	A = tuple(map(int, input().split()))
	a = set(A)
	cnt = 0
	for i in a:
		if i > 0:
			cnt += 1
	print(cnt)
main()


def main():
	n = int(input())
	scores = list(map(int, input().split()))
	scores_set = set(scores) - {0}
	print(len(scores_set))
main()


import sys

def main():
	n = int(sys.stdin.readline())
	l = sys.stdin.readline().split()
	assert len(l) == n
	num_ways = len(set(l) - {'0'})
	print(num_ways)
main()


input()
a = sorted(list(map(int, input().split())) + [0], reverse=True)
print(len(set(a[0:a.index(0)])))


n = int(input())
a = [int(x) for x in input().strip().split(' ')]
if 0 in a:
	print(len(list(set(a))) - 1)
else:
	print(len(list(set(a))))


n = int(input())
a = list(map(int, input().split()))
d = {}
for i in range(n):
	if a[i] != 0:
		if a[i] not in d:
			d[a[i]] = 1
cnt = 0
for i in d.keys():
	cnt += 1
print(cnt)


input = __import__('sys').stdin.readline
n = int(input())
lis = list(map(int, input().split()))
has = [0] * 100005
for i in lis:
	if i != 0:
		has[i] = 1
print(sum(has))


from collections import Counter
n = int(input())
a = list(map(int, input().split()))
c = Counter(a)
try:
	del c[0]
except KeyError:
	pass
print(len(c))


n = int(input())
s = set(list(map(int, input().split()))) - set([0])
print(len(s))


input()
print(len(set(filter(lambda v: v > 0, map(int, input().split())))))


n = int(input())
scores = input().split(' ')
scores = set(scores)
if '0' in scores:
	print(str(len(scores) - 1))
else:
	print(len(scores))


n = int(input())
a = [int(i) for i in input().split()]
t = 0
b = []
for i in range(n):
	if a[i] not in b and a[i] != 0:
		b.append(a[i])
print(len(b))


n = int(input())
points = sorted(set(input().split()), key=int)
j = 1
count = 0
if int(points[0]) == 0:
	count = len(points) - 1
else:
	count = len(points)
print(count)


n = int(input())
a = [int(i) for i in input().split()]
cnt = 0
a.sort()
a = [0] + a + [1000]
for i in range(1, n + 1):
	if a[i] and a[i] != a[i + 1]:
		cnt += 1
print(cnt)


n = int(input())
a = list(map(int, input().split()))
a.sort()
if n == 1:
	print(1)
else:
	c = 1
	for i in range(n - 2, -1, -1):
		if a[i] == 0:
			break
		if a[i] != a[i + 1]:
			c += 1
	print(c)


N = int(input())
s = list(map(int, input().split()))
v = 0
for i in range(max(s)):
	for j in range(N):
		if max(s) - i == s[j]:
			v += 1
			break
print(v)


input()
a = sorted(set(map(int, input().split())))
print(len(a) if a[0] != 0 else len(a) - 1)


k = int(input())
a = [int(x) for x in input().split()]
print(len(set(a) - {0}))


n = int(input())
arr = list(map(int, input().split()))
x = arr.count(0)
for i in range(x):
	arr.remove(0)
arr = set(arr)
print(len(arr))


def olympiad(n, a):
	v = set()
	for i in a:
		if i > 0:
			v.add(i)
	return len(v)
n = int(input())
a = []
a = input().strip().split()
a = list(map(int, a))
print(olympiad(n, a))


n = int(input())
l = list(map(int, input().split()))
q = [i for i in list(set(l)) if i != 0]
print(len(q))


n = int(input())
ns = set(input().split())
if '0' in ns:
	ns.remove('0')
print(len(ns))


s = set()
n = int(input())
a = list(map(int, input().split()))
for ai in a:
	if ai > 0:
		s.add(ai)
print(len(s))


a = int(input())
li = list(map(int, input().split()))
li = set(li)
li = list(li)
a = len(li)
li.sort()
c = 0
for i in range(a):
	if li[i] == 0:
		pass
	else:
		c += 1
print(c)


n = int(input())
a = list(map(int, input().split()))
a.sort()
i = 0
while i < len(a):
	if a[i] == 0:
		del a[0]
		continue
	i += 1
print(len(list(set(a))))


__author__ = 'Dilshod'
n = int(input())
m = set(map(int, input().split()))
if 0 in m:
	print(len(m) - 1)
else:
	print(len(m))


n = int(input())
l = list(map(int, input().split()))
s = set(l)
counter = 0
for lol in s:
	if lol != 0:
		counter += 1
print(counter)


N = int(input())
A = map(int, input().split())
count = 0
for i in set(A):
	if not i == 0:
		count += 1
print(count)


n = int(input())
arr = list(map(int, input().split()))
arr.sort()
ans = 1
for i in range(0, n - 1):
	if arr[i] == 0:
		continue
	if arr[i] != arr[i + 1]:
		ans += 1
print(ans)


noe = input()
arr = [int(x) for x in input().split() if x != '0']
print(len(set(arr)))


n = int(input())
a = sorted(list(map(int, input().split())))
ans = 0
if a[0] != 0:
	ans += 1
for i in range(1, len(a)):
	if a[i] > a[i - 1]:
		ans += 1
print(ans)


count = int(input())
arr = list(map(int, input().split(' ')))
res = count
for i in range(count):
	el = arr[i]
	if el == 0 or arr.index(el) < i:
		res -= 1
print(res)


a = int(input())
b = input().split()
check = {}
for i in b:
	if i != '0':
		check[i] = 1
print(len(check))


n = int(input())
scores = [int(x) for x in input().split()]
scores.sort(reverse=True)
result = 1
for i in range(n - 1):
	if scores[i + 1] == 0:
		break
	if scores[i + 1] != scores[i]:
		result += 1
print(result)


a = int(input())
b = list(map(int, input().split()))
x = []
for i in b:
	if i != 0:
		x.append(i)
print(len(set(x)))


n = int(input())
tab = set(map(int, input().split()))
tab.discard(0)
print(len(tab))


num = int(input())
array = list(map(int, input().split()))
while 0 in array:
	array.remove(0)
print(len(set(array)))


a = input()
b = input()
b = b.split()
scores = []
for i in b:
	scores.append(int(i))
nov = []
for i in b:
	if i not in nov:
		nov.append(i)
try:
	nov.remove('0')
except:
	pass
print(len(nov))


import math
a = input()
b = set([int(x) for x in input().split(' ') if int(x) != 0])
print(len(b))


def bubblesort(lista):
	trocou = True
	for j in range(len(lista) - 1):
		if not trocou:
			break
		trocou = False
		for i in range(len(lista) - 1):
			if lista[i] > lista[i + 1]:
				(lista[i], lista[i + 1]) = (lista[i + 1], lista[i])
				trocou = True

def meu_map(lista):
	lista_mapeada = []
	for e in lista:
		lista_mapeada.append(int(e))
	return lista_mapeada

def possibilidades(lista):
	nao_foi = True
	jeitos = 0
	aux = 1
	for e in lista:
		if e > aux or (e == 1 and nao_foi):
			nao_foi = False
			aux = e
			jeitos += 1
	return jeitos
n = int(input())
scores = meu_map(input().split())
scores = meu_map(scores)
bubblesort(scores)
print(possibilidades(scores))


n = int(input())
a = [int(i) for i in input().split()]
a = set(a)
if 0 in a:
	print(len(a) - 1)
	exit()
print(len(a))


n = int(input())
a = [int(i) for i in input().split()]
a = sorted(list(set(a)))
m = len(a)
if a[0] == 0:
	m -= 1
print(m)


n = int(input())
sc = list(map(int, input().split()))
sort1 = sorted(sc, reverse=True)
count = 0
x = 1324
for i in range(n):
	if sort1[i] != x and sort1[i] != 0:
		count += 1
		x = sort1[i]
print(count)


n = int(input())
scores = set((int(x) for x in input().split()))
print(len(scores) - (0 in scores))


n = int(input())
arr = list(map(int, input().split()))
s = set()
for i in arr:
	if i == 0:
		continue
	else:
		s.add(i)
print(len(s))


numParts = int(input())
scores = list(map(int, input().split()))
scores.sort()
numWays = 0
lastScore = 601
for score in scores:
	if score != 0 and score != lastScore:
		numWays = numWays + 1
	lastScore = score
print(numWays)


n = int(input())
a = list(map(int, input().split()))
k = set(a)
u = a.count(0)
if u == 0:
	print(len(k))
elif len(k) - 1 < 0:
	print(0)
else:
	print(len(k) - 1)


import sys
import math
import bisect

def main():
	n = int(input())
	A = list(map(int, input().split()))
	s = set(A)
	if 0 in s:
		s.remove(0)
	print(len(s))
main()


input()
lst = list(map(int, input().split(' ')))
lst1 = list(set(lst))
if 0 in lst1:
	lst1.remove(0)
print(len(lst1))


import sys, math
input = sys.stdin.readline
L = lambda : list(map(int, input().split()))
M = lambda : map(int, input().split())
n = int(input())
l = L()
l = list(set(l))
print(len(l) - l.count(0))


n = int(input())
a = list(map(int, input().split()))
a1 = list(set(a))
c = 0
for i in range(0, len(a1)):
	if a1[i] != 0:
		c = c + 1
print(c)


n = int(input())
l = list(map(int, input().split()))
while l.count(0):
	l.remove(0)
print(len(set(l)))


input()
s = set(map(int, input().split()))
try:
	s.remove(0)
except KeyError:
	pass
print(len(s))


n = int(input())
c = list(map(int, input().split()))
y = set(c)
z = y | y
if 0 in z:
	print(len(z) - 1)
else:
	print(len(z))


R = lambda : map(int, input().split())
n = int(input())
a = list(R())
a = list(set(a))
if 0 in a:
	a.remove(0)
print(len(a))


n = eval(input())
num = list(map(int, input().split()))
x = [False] * 601
i = 0
while i <= len(num) - 1:
	x[num[i]] = True
	i += 1
i = 1
m = 0
while i < 601:
	if x[i]:
		m += 1
	i += 1
print(m)


n = int(input())
participants = set(input().split())
ways = len(participants)
if '0' in participants:
	print(ways - 1)
else:
	print(ways)


n = int(input())
arr = [int(item) for item in input().split()]
d = dict()
for i in arr:
	d[i] = 0
count = 0
for i in arr:
	if i != 0 and d[i] == 0:
		count = count + 1
		d[i] = 1
print(count)


n = int(input())
li = list(filter(lambda x: x != '0', input().split()))
print(len(set(li)))


n = int(input())
slist = list(map(int, input().split()))
sset = list(set(slist))
if 0 in sset:
	sset.remove(0)
print(len(sset))


n = int(input())
l = sorted(list(map(int, input().split())))
st = set()
for i in l:
	if i != 0:
		st.add(i)
print(len(st))


n = int(input())
b = list(map(int, input().split()))
m = []
for i in range(601):
	m.append(int(0))
for i in range(n):
	if b[i] > 0:
		m[b[i]] = 1
v = 0
for i in range(len(m)):
	if m[i] == 1:
		v += 1
print(v)


n = int(input())
a = list(map(int, input().split()))
if 0 in a:
	y = a.count(0)
	for k in range(y):
		a.remove(0)
if len(set(a)) != 1:
	print(len(set(a)))
else:
	print(1)


n = int(input())
b = len(set(filter(lambda x: x != 0, map(int, input().split()))))
print(b)


_ = input()
scores = map(int, input().strip().split())
seen = set()
for s in scores:
	if s > 0:
		seen.add(s)
print(len(seen))


n = int(input())
l = [int(i) for i in input().split()]
l = [i for i in l if i]
print(len(set(l)))


n = input()
x = list(set(list(map(int, input().split()))))
if not len(x) - 1:
	print(1)
elif 0 in x:
	print(len(x) - 1)
else:
	print(len(x))


input()
print(len(set(filter(lambda x: int(x), input().split()))))


input()
s = list(map(int, input().split()))
print(len(set(s)) - int(0 in s))


n = int(input())
l = [int(j) for j in input().split()]
s = list(set(l))
ans = len(s)
if 0 in s:
	ans -= 1
print(ans)


from collections import defaultdict
from collections import deque
from collections import Counter
import sys
sys.setrecursionlimit(1000000)
n = int(input())
a = [int(i) for i in input().split()]
c = Counter()
for v in a:
	c[v] += 1
ways = 1
print(len(c) - int(0 in c.keys()))


n = int(input())
inp = list(map(int, input().split(' ')))
values = set(inp)
if 0 in values:
	print(len(values) - 1)
else:
	print(len(values))


n = int(input())
L = sorted([int(x) for x in input().split()])
print(len(set(L)) if 0 not in L else len(set(L)) - 1)


import atexit
import io
import sys
_INPUT_LINES = sys.stdin.read().splitlines()
input = iter(_INPUT_LINES).__next__
_OUTPUT_BUFFER = io.StringIO()
sys.stdout = _OUTPUT_BUFFER

@atexit.register
def write():
	sys.__stdout__.write(_OUTPUT_BUFFER.getvalue())

def main():
	n = int(input())
	a = [int(x) for x in input().split()]
	dd = set(a)
	print(len(dd) - 1 if 0 in dd else len(dd))
main()


(n, l1) = (int(input()), list(map(int, input().split())))
l2 = []
for i in l1:
	if i != 0:
		l2.append(i)
s = set(l2)
print(len(s))


def problem():
	in1 = input()
	in2 = input()
	points = list(filter(lambda x: x > 0, set(map(int, in2.split()))))
	return len(points)
print(problem())


n = int(input())
points = [int(i) for i in input().split()]
awarded = set()
for p in points:
	if p not in awarded and p > 0:
		awarded.add(p)
print(len(awarded))


n = int(input())
l = list(map(int, input().split()))
s = set(l)
if 0 not in s:
	print(len(s))
else:
	print(len(s) - 1)


n = int(input())
a = list(map(int, input().split()))
a.sort()
c = 1
if a.count(max(a)) == len(a):
	print(c)
else:
	a = list(set(a))
	if 0 in a:
		a.remove(0)
	print(len(a))


good_results = set()
n = int(input())
r = list(map(int, input().split()))
for c in r:
	if c != 0:
		good_results.add(c)
print(len(good_results))


n = input().split()
list = [int(x) for x in input().split()]
max = 0
counter = 0
min = 0
for i in range(len(list)):
	if list[i] >= max:
		max = list[i]
if max == 0:
	print(0)
else:
	counter = counter + 1
	while max != 0:
		max = max - 1
		if max in list and max != 0:
			counter = counter + 1
	print(counter)


n = int(input())
m = list(map(int, input().split()))
m.sort()
k = 0
if m[0] > 0:
	k += 1
for i in range(1, len(m)):
	if m[i] > 0 and m[i] != m[i - 1]:
		k += 1
print(k)


import math
from sys import stdin
n = int(stdin.readline().strip())
array0 = [int(x) for x in stdin.readline().strip().split()]
array0.sort(reverse=True)
table = []
for item in array0:
	if len(table) == 0 or item != table[-1][-1]:
		table.append([item])
	else:
		table[-1].append(item)
count = 0
for rows in table:
	if rows[-1] != 0:
		count += 1
print(count)


n = int(input())
str = input()
li = str.split(' ')
scores = {0}
for i in li:
	scores.add(int(i))
print(len(scores) - 1)


n = int(input())
arr = list(map(int, input().split()))
arr.sort()
while 0 in arr:
	arr.remove(0)
if len(arr) == 0:
	cnt = 0
else:
	cnt = 1
for i in range(len(arr) - 1):
	if arr[i] != arr[i + 1]:
		cnt += 1
print(cnt)


n = int(input())
l = list(map(int, input().split()[:n]))
b = []
for i in l:
	if i != 0:
		b.append(i)
print(len(set(b)))


n = int(input())
l = list(map(int, input().split()))
l.sort()
s = 1
for i in range(len(l) - 1):
	if l[i] != l[i + 1]:
		s = s + 1
if l[0] == 0:
	s = s - 1
print(s)


n = int(input())
l1 = list(map(int, input().strip().split()))
ls = set(l1)
if 0 in ls:
	ans = len(ls) - 1
else:
	ans = len(ls)
print(ans)


n = int(input())
s = list(map(int, input().split()))
ns = [int(i) for i in s if i > 0]
print(len(set(ns)))


n = int(input())
a = list(map(int, input().split()))
s = list(set(a))
x = len(s) - s.count(0)
print(x)


n = int(input())
a = list(map(int, input().split()))
comb = 0
nonz = 0
d = {}
for aa in a:
	if aa == 0:
		continue
	nonz = nonz + 1
	d[aa] = 1
print(len(d.keys()))


n = int(input())
l = list(map(int, input().split()))
l.sort()
ans = 0
if l[0] != 0:
	ans = 1
for i in range(1, len(l)):
	if l[i] == 0 or l[i] == l[i - 1]:
		continue
	ans += 1
print(ans)


n = int(input())
l = list(map(int, input().split()))
l2 = []
for x in l:
	if x not in l2 and x != 0:
		l2.append(x)
print(len(l2))


n = int(input())
ai = set(map(int, input().split()))
if 0 in ai:
	ai.remove(0)
print(len(ai), end='')


a = int(input())
b = list(map(int, input().split()))
b = set(b)
b = list(b)
b.sort()
tot = 0
if b[0] == 0:
	tot -= 1
tot += len(b)
print(tot)


n = int(input())
m = input().split(' ')
l = []
for i in range(len(m)):
	if int(m[i]) != 0 and (not m[i] in l):
		l += [m[i]]
print(len(l))


from collections import Counter
n = int(input())
a = map(int, input().split())
cnt = Counter(a)
if 0 in cnt:
	print(len(cnt) - 1)
else:
	print(len(cnt))


import sys
import math
get_string = lambda : sys.stdin.readline().strip()
get_list = lambda : list(map(int, sys.stdin.readline().strip().split()))
get_intList_from_str = lambda : list(map(int, list(sys.stdin.readline().strip())))
get_charList_from_str = lambda : list(sys.stdin.readline().strip())
get_int = lambda : int(sys.stdin.readline().strip())
pt = lambda x: sys.stdout.write(str(x))
n = get_int()
score = get_list()
d = {}
count = 0
for i in score:
	if i not in d and i != 0:
		d[i] = 1
		count += 1
print(count)


import sys
import os
import math
import re
n = input()
scores = list(map(int, input().split()))
soln = []
for score in scores:
	if score not in soln and score != 0:
		soln.append(score)
print(len(soln))


from collections import Counter
from itertools import groupby
n = int(input())
a = list(map(int, input().split()))
c = list(Counter(a))
if c.count(0) == 0:
	print(len(c))
else:
	print(len(c) - 1)


n = int(input())
a = [int(i) for i in input().split()]
b = [a[0]]
for i in a:
	t = 0
	for j in b:
		if j != i:
			t += 1
	if t == len(b) and i != 0:
		b.append(i)
if a[0] == 0:
	print(len(b) - 1)
else:
	print(len(b))


n = int(input(''))
x = input('')
l = x.split()
lst = list()
for c in l:
	c = int(c)
	lst.append(c)
lst.sort()
count = 1
for k in range(len(lst) - 1):
	if lst[k] != 0 and lst[k] != lst[k + 1]:
		count = count + 1
print(count)


n = int(input())
l = set(input().split())
if '0' in l:
	print(len(l) - 1)
else:
	print(len(l))


n = int(input())
l = [int(x) for x in input().split()]
l.sort()
if l[0] == 0:
	c = 0
else:
	c = 1
for i in range(1, n):
	if l[i] != l[i - 1] and l[i] != 0:
		c += 1
print(c)


n = int(input())
l1 = list(map(int, input().split()))
s1 = set(l1)
if l1.count(0) > 0:
	s1.remove(0)
print(len(s1))


input()
li = list(input().split())
li = set(li)
li = filter(lambda a: a != '0', li)
li = list(li)
print(len(li))


n = int(input())
arr = list(map(int, input().split()))
l = list(set(arr))
if 0 in l:
	l.pop(l.index(0))
print(len(l))


def test_3():
	arr1 = list(map(int, input().split(' ')))
	arr2 = list(map(int, input().split(' ')))
	count = 0
	a1 = set(arr2)
	a1 = a1 - set([0])
	count = len(a1)
	return count
aa = test_3()
print(aa)


n = int(input())
a = list(map(int, input().split()))
f = [0] * 700
c = 0
for i in range(n):
	if a[i] == 0:
		continue
	elif f[a[i]] == 0:
		c += 1
		f[a[i]] = 1
print(c)


def Olypiad(n, ar):
	ar.sort()
	m = 0
	a = 0
	for i in range(0, n):
		if ar[i] != a:
			m += 1
			a = ar[i]
	return m

def hello():
	n = int(input().strip())
	ar = list(map(int, input().strip().split(' ')))
	result = Olypiad(n, ar)
	print(result)
hello()


n = int(input())
a = list(map(int, input().split()))
a = list(set(sorted(a)))
cnt = 0
if a[0] == 0:
	cnt = -1
cnt += len(list(a))
print(cnt)


n = int(input())
l = [int(x) for x in input().split()]
l = set(l)
s = filter(lambda x: x > 0, l)
s = list(s)
if len(s) == 0:
	print(1)
else:
	print(len(s))


n = int(input())
arr = list(map(int, input().strip().split(' ')))
arr = set(arr)
if 0 in arr:
	print(len(arr) - 1)
else:
	print(len(arr))


n = int(input())
a = list(map(int, input().split()))
a.sort()
count = 0
for i in range(0, n):
	if a[i] == 0:
		pass
	elif i != 0 and a[i] == a[i - 1]:
		pass
	else:
		count += 1
print(count)


n = int(input())
l = list(map(int, input().split()))
s = set(l)
s.discard(0)
print(len(s))


n = int(input())
x = list(map(int, input().split()))
count = 0
for i in range(n):
	if len(x) > 0:
		if min(x) > 0:
			count += 1
		for j in range(x.count(min(x))):
			x.remove(min(x))
print(count)


n = int(input())
a = set(map(int, input().split()))
output = len(a) if 0 not in a else len(a) - 1
print(output)


import math, sys
from collections import Counter, defaultdict
from sys import stdin, stdout
lili = lambda : list(map(int, sys.stdin.readlines()))
li = lambda : list(map(int, input().split()))
n = int(input())
a = li()
s = set(a)
if 0 in a:
	print(len(s) - 1)
else:
	print(len(s))


n = int(input())
ln = list(map(int, input().split()))
sn = list(set(ln))
count = 0
if 0 in sn:
	count += 1
print(len(sn) - count)


m = input()
n = list(map(int, input().split()))
print(len(set(n) - {0}))


fin = []
n = int(input())
A = list(map(int, input().split()))
for a in A:
	if a not in fin:
		fin.append(a)
for a in fin:
	if a == 0:
		fin.remove(0)
ct = len(fin)
print(ct)


n = int(input())
a = input().split()
for i in range(n):
	a[i] = int(a[i])
a = list(set(a))
if 0 in a:
	print(len(a) - 1)
else:
	print(len(a))


def solution():
	n = int(input())
	arr = [int(i) for i in input().split(' ') if int(i) != 0]
	print(len(set(arr)))
solution()


n = int(input())
s = input().split()
cl = []
for i in range(n):
	if s[i] not in cl and s[i] != '0':
		cl.append(s[i])
print(len(cl))


import sys

def solve(n, a):
	a.sort()
	prev = -1
	res = 0
	for x in a:
		if x == 0:
			continue
		if x != prev:
			res += 1
		prev = x
	return res
n = int(input())
a = list(map(int, input().split(' ')))
result = solve(n, a)
print(result)


n = int(input())
a = set(map(int, input().split()))
cnt = 0
for i in a:
	if i > 0:
		cnt += 1
print(cnt)


n = input()
n = int(n)
str = input()
A = set()
for i in str.split():
	A.add(int(i))
print(sum((j > 0 for j in A)))


a = input()
b = set(input().split())
b.discard('0')
print(len(b))


n = int(input())
lst = [int(i) for i in input().split()]
print(len(set(lst)) if 0 not in lst else len(set(lst)) - 1)


n = input()
grades = input().split()
ways = len(set(grades))
if '0' in grades:
	ways -= 1
print(ways)


p = int(input())
l = list(map(int, input().split()))
l.sort()
arr = set(l)
val = 0
arr = [i for i in arr if i != val]
print(len(arr))


n = input()
s = set(input().split())
if '0' in s:
	s.remove('0')
print(len(s))


n = int(input())
l = list(map(int, input().split()))
l.sort()
nb = 1
for i in range(n - 1):
	if l[i] != l[i + 1] and l[i] != 0:
		nb += 1
print(nb)


number = int(input())
a1 = list(map(int, input().split()))
while 0 in a1:
	a1.remove(0)
print(len(set(a1)))


input()
S = set(input().split())
S.discard('0')
print(len(S))


y = int(input())
s = input()
n = [int(s) for s in s.split()]
u = [0]
for i in range(y):
	if n[i] not in u:
		u.append(n[i])
print(len(u) - 1)


n = int(input())
m = {}
inp = [int(i) for i in input().split(' ')]
for i in inp:
	if i == 0:
		continue
	if m.get(i, 0) == 0:
		m[i] = 1
	else:
		m[i] += 1
print(len(m))


input()
x = set(map(int, input().split()))
if x.__contains__(0):
	x.remove(0)
print(len(x))


(n, s) = (int(input()), set())
a = list((int(x) for x in input().split()))
for i in a:
	if i:
		s.add(i)
print(len(s))


a = int(input())
b = input()
b = [int(s) for s in b.split(' ')]
b = list(set(b))
n = len(b)
c = 0
for i in range(0, n):
	b[i] = int(b[i])
	if b[i] == 0:
		c = 1
print(n - c)


n = int(input())
l = list(map(int, input().split()))
i = 0
while i in l:
	l.remove(i)
k = []
for j in range(len(l)):
	if l[j] not in k:
		k.append(l[j])
k.sort()
for i in range(len(k)):
	if k[i] == max(k):
		print(i + 1)
		break


q = lambda : map(int, input().split())
qi = lambda : int(input())
qs = lambda : input().split()
input()
s = set(q())
s.discard(0)
print(len(s))


p = int(input())
c = list(map(int, input().strip().split()))[:p]
q = set(c)
l = len(q)
if 0 in q:
	print(l - 1)
else:
	print(l)


n = int(input())
a = sorted(list(map(int, input().split())))
a = list(set([x for x in a if x > 0]))
print(len(a))


n = int(input())
s = list(map(int, input().split()))
p = set(filter(lambda x: x > 0, s))
print(len(p))


n = int(input())
a = list(map(int, input().split()))
x = dict()
for i in range(n):
	if a[i] > 0:
		x[a[i]] = 1
print(len(x))


from collections import *
a = int(input())
b = list(map(int, input().split()))
d = Counter(b)
if b.count(0):
	print(len(d) - 1)
else:
	print(len(d))


import sys, math
f = sys.stdin
N = int(f.readline())
scores = list(map(int, f.readline().split()))
scores = sorted(set(scores))
if scores[0] == 0:
	scores.pop(0)
print(len(scores))


N = int(input())
li = [int(i) for i in input().split()]
li1 = set(li)
if 0 in li1:
	li1.remove(0)
print(len(li1))


n = int(input())
a = list(map(int, input().split()))
a = set(a)
val = 0
for i in a:
	if i > 0:
		val += 1
print(val)


__ = int(input())
___ = [int(_) for _ in input().split()]
_ = list(set(___))
print(len(_) if 0 not in _ else len(_) - 1)


from functools import reduce
from itertools import combinations_with_replacement
n = int(input())
a = map(int, input().split())
s = set(filter(lambda x: x != 0, a))
l = [i for i in combinations_with_replacement(s, 1)]
print(len(l))


n = int(input())
a = set(list(map(int, input().split())))
f = 0
for i in a:
	if i == 0:
		f = 1
print(len(a) - f)


(z, zz, dgraphs, mod) = (input, lambda : list(map(int, z().split())), {}, 10 ** 9 + 7)
from string import *
from collections import *
from queue import *
from sys import *
from collections import *
from math import *
from heapq import *
from itertools import *
from bisect import *
from collections import Counter as cc
from math import factorial as f

def lcd(xnum1, xnum2):
	return xnum1 * xnum2 // gcd(xnum1, xnum2)

def prime(x):
	p = ceil(x ** 0.5) + 1
	for i in range(2, p):
		if x % i == 0 and x != 2:
			return 0
	return 1

def dfs(u, visit, graph):
	visit[u] = True
	for i in graph[u]:
		if not visit[i]:
			dfs(i, visit, graph)
n = int(z())
l = list(set(zz()))
try:
	l.remove(0)
except:
	pass
print(len(l))


n = int(input())
arr = input().split()
a = []
for i in arr:
	a.append(int(i))
l = [0] * 601
count = 0
for i in a:
	if l[i] == 0 and i != 0:
		count += 1
		l[i] = 1
print(count)


from itertools import filterfalse
input()
print(len(set(filterfalse(lambda x: x == 0, map(int, input().split())))))


n = int(input())
s = input().split()
s = list(set(s))
d = []
for i in range(0, len(s)):
	if s[i] is '0':
		d.append(i)
for j in range(0, len(d)):
	del s[d[j] - j]
print(len(s))


t = int(input())
l = [None] * t
l = list(map(int, input().split()))
l = list(set(l))
if 0 in l:
	l.remove(0)
k = len(l)
print(k)


n = int(input())
l = list(map(int, input().split()))
count = 0
for i in range(len(l)):
	if l[i] == 0:
		count += 1
for j in range(count):
	l.remove(0)
print(len(set(l)))


n = input()
n = int(n)
arr = list(map(int, input().split()))
arr.sort()
arr2 = []
for i in arr:
	if i not in arr2 and i != 0:
		arr2.append(i)
print(len(arr2))


x = int(input())
print(len(set(input().split()) - {'0'}))


n = int(input())
a = input().split()
b = []
for i in range(n):
	a[i] = int(a[i])
	true = True
	if a[i] == 0:
		true = False
	for j in range(len(b)):
		if a[i] == b[j]:
			true = False
		if not true:
			break
	if true:
		b += [a[i]]
print(len(b))


def answer():
	n = int(input())
	b = [int(x) for x in input().split() if int(x) > 0]
	b = len(set(b))
	print(b)
answer()


n = int(input())
a = list(map(int, input().split()))
a.sort()
if a[0] == 0:
	prev = 0
else:
	prev = a[0] + 1
s = 0
for i in range(n):
	curr = a[i]
	if curr != prev:
		s += 1
	prev = curr
print(s)


t = int(input())
x = [int(q) for q in input().split()]
s = x.count(0)
for i in range(s):
	x.remove(0)
print(len(list(set(map(int, x)))))


import sys
import math
t = int(input())
a = list(map(int, input().split()))
a.sort()
if a[0] == 0:
	f = 1
else:
	f = 0
a = set(a)
if f == 1:
	print(len(a) - 1)
else:
	print(len(a))


n = int(input())
lst = input().split()
lst.sort()
pre = 0
ans = 0
for i in lst:
	if i != '0':
		if i != pre:
			ans += 1
	pre = i
print(ans)


firstLine = input()
scores = list(map(int, input().split()))
noZeros = list(filter(lambda x: x > 0, scores))
print(len(set(noZeros)))


numPart = int(input())
parts = input().split()
parts = set(parts)
parts.discard('0')
print(len(parts))


n = int(input())
nb = list(map(int, input().split()))
distinct = []
for i in nb:
	if i and i not in distinct:
		distinct.append(i)
print(len(distinct))


n = int(input())
a = list(map(int, input().strip().split()))
b = set(a)
res = 0
for x in b:
	if x > 0:
		res += 1
print(res)


n = int(input())
a = list(map(int, input().split()))
d = {}
sa = list(set(a))
sa.sort()
way = len(sa)
if sa[0] == 0:
	way = len(sa) - 1
print(way)


n = int(input())
b = list(map(int, input().split()))
b.sort()
s = set(b)
l = len(s)
if 0 in b:
	print(l - 1)
else:
	print(l)


a = int(input())
b = set()
count = 0
for x in input().split():
	d = int(x)
	if d != 0 and d not in b:
		count += 1
	b.add(d)
print(count)


n = int(input())
arr = [int(i) for i in input().split()]
seen = set()
count = 0
for val in arr:
	seen.add(val)
for val in seen:
	if val != 0:
		count += 1
print(count)


a = input()
b = set(input().split())
j = 0
for i in b:
	if int(i) > 0:
		j += 1
print(j)


n = int(input())
scores = list(map(int, input().split()))
while scores.count(0) != 0:
	scores.remove(0)
scores.sort()
first_score = scores[0]
scores_new = [first_score]
for i in range(1, len(scores)):
	if scores[i] > first_score:
		scores_new.append(scores[i])
		first_score = scores[i]
print(len(scores_new))


n = int(input())
a = list(map(int, input().split()))
v = 601 * [0]
for i in range(n):
	if a[i] != 0:
		v[a[i]] = 1
print(sum(v))


n = int(input())
s = set(map(int, input().split()))
print(len(s) - int(0 in s))


n = int(input())
s = input().split()
for a in range(n):
	s[a] = int(s[a])
(k, i) = (0, 0)
s.sort()
s.reverse()
for a in s:
	if k != a and a != 0:
		k = a
		i += 1
print(i)


__author__ = 'Matias'
participants = input()
scores = input().split()
scoredict = {}
ans = 0
for i in scores:
	if int(i) > 0 and (not str(i) in scoredict):
		ans += 1
		scoredict[str(i)] = 1
print(ans)


n = int(input())
l = list(map(int, input().split()))
n = []
for a in l:
	if a == 0:
		continue
	if a not in n:
		n.append(a)
print(len(n))


n = int(input())
scores = sorted(list(map(int, input().split())))
algezien = []
for (index, item) in enumerate(scores):
	if item not in algezien and item != 0:
		algezien.append(item)
print(len(algezien))


n = int(input())
arr = list(map(int, input().split()))
arr = set(arr)
arr = sorted(arr)
arr = list(filter(0 .__ne__, arr))
print(len(arr))


n = int(input())
a = [int(x) for x in input().split(' ')]
print(len(set(filter(lambda x: x > 0, a))))


import collections
n = int(input())
a = collections.Counter(list(map(int, input().split())))
c = 0
for i in a:
	if i > 0:
		c += 1
print(c)


n = int(input())
m = n
L = [int(_) for _ in input().split()]
s = set(L)
if 0 in s:
	s.remove(0)
print(len(s))


n = int(input())
s = set(map(int, input().split()))
u = list(s)
u.sort()
n = len(u)
if u[0] == 0:
	n -= 1
print(n)


n = int(input())
temp = set(input().split())
temp = list(temp)
temp.sort()
if temp[0] == '0':
	temp.pop(0)
print(len(temp))


n = int(input())
a = list(map(int, input().split()))
x = sorted(list(set(a)))
print(len(x) if x[0] else len(x) - 1)


n = int(input())
a = list(map(int, input().split()))
b = set(a)
count = sum((i > 0 for i in b))
print(count)


n = input()
l = [int(x) for x in input().split()]
maxi = max(l)
l = set([x for x in l if x > 0])
print(len(l))


t = int(input())
s1 = list(map(int, input().split()))
myset = set(s1)
l = len(myset)
if 0 in myset:
	l = l - 1
if l > 2:
	print(l)
elif l == 2:
	print(2)
elif l == 1:
	print(1)


import sys
n = input('')
arr = input('')
num = [int(n) for n in arr.split()]
ans = 1
num.sort()
dp = num[0]
i = 0
while i < int(n):
	if dp > 0 and dp != num[i]:
		ans = ans + 1
	dp = num[i]
	i = i + 1
print(ans)


n = input()
s = input()
s = s.split()
s = list(map(int, s))
scores = set(s)
res = 0
if len(scores) == 1:
	res = 1
elif 0 in scores:
	res = len(scores) - 1
else:
	res = len(scores)
print(res)


n = int(input())
ar = input().split(' ')
from collections import Counter
c = Counter(ar)
del c['0']
ar = c.most_common(len(c))
print(len(ar))


n = int(input())
b = []
for i in map(int, input().split()):
	if i != 0 and i not in b:
		b.append(i)
print(len(b))


n = int(input())
a = list(map(int, input().split()))
a.sort()
c = 1
for i in range(len(a) - 1):
	if a[i] != a[i + 1] and a[i] != 0:
		c += 1
print(c)


n = int(input())
a = set()
b = [int(x) for x in input().split()][:n]
for i in range(n):
	if b[i] != 0:
		a.add(b[i])
print(len(a))


a = int(input())
s = list(map(int, input().split()))
z = []
for i in range(a):
	if s[i] not in z and s[i] != 0:
		z.append(s[i])
print(len(z))


n = int(input())
scores = input().split()
newScores = []
for i in scores:
	if i not in newScores and i != '0':
		newScores.append(i)
print(len(newScores))


n = int(input())
ai = list(map(int, input().split()))
ai.sort()
ans = ai[0] != 0
for i in range(1, n):
	ans += ai[i - 1] != ai[i]
print(int(ans))


MAX = 650

def main():
	n = int(input())
	a = [int(x) for x in input().split()]
	c = MAX * [False]
	r = 0
	for v in a:
		if not c[v] and v != 0:
			c[v] = True
			r += 1
	print(r)
main()


n = int(input())
a = list(map(int, input().split()))
numbers = []
a.sort()
for i in range(n):
	if a[i] not in numbers and a[i] != 0:
		numbers.append(a[i])
print(len(numbers))


n = int(input())
scores = list(map(int, input().split()))
medals = set([score for score in scores if score != 0])
print(len(medals))


n = int(input())
s = set()
arr = list(map(int, input().strip().split()))
for x in arr:
	if x != 0:
		s.add(x)
print(len(s))


n = int(input())
a = list(map(int, input().split()))
a.sort()
if a[0] != 0:
	res = 1
else:
	res = 0
b = a[0]
for i in range(len(a)):
	if a[i] != b:
		res += 1
	b = a[i]
print(str(res))


n = int(input())
arr = [int(x) for x in input().split()]
arr1 = []
for i in range(0, n):
	if arr[i] > 0:
		arr1.append(arr[i])
print(len(set(arr1)))


n = int(input())
scores = [int(num) for num in input().split(' ')]

def getWays(lista):
	ways = []
	for num in lista:
		if num == 0:
			next
		elif num in ways:
			next
		else:
			ways.append(num)
	return len(ways)
print(getWays(scores))


n = int(input())
s = str(input())
s += ' '
li = []
c = 0
j = 0
while s != '':
	if s[j] == ' ':
		a = int(s[:j])
		s = s[j + 1:]
		li.append(a)
		j = 0
	j += 1
while 0 in li:
	li.remove(0)
while li != []:
	u = li[0]
	while u in li:
		li.remove(u)
	c += 1
print(c)


from collections import Counter
n = int(input())
idx___score = [int(x) for x in input().split()]
scores = Counter(idx___score)
if 0 in scores:
	print(len(scores) - 1)
else:
	print(len(scores))


t = int(input())
a = [int(i) for i in input().split()]
b = []
c = []
for i in range(len(a)):
	if a[i] != 0:
		b.append(a[i])
for i in b:
	if i not in c:
		c.append(i)
print(len(c))


n = int(input())
ar = list(map(int, input().split()))
count = 0
s = set(ar)
ls = list(s)
l = len(ls)
for i in range(l):
	if ls[i] != 0:
		count += 1
print(count)


n = int(input())
a = set(map(int, input().split()))
print(len(a.difference({0})))


n = int(input())
st = {int(a) for a in input().split()}
if 0 in st:
	st.remove(0)
print(len(st))


n = int(input())
a = list(map(int, input().split()))
b = set(a)
if 0 not in a:
	print(len(b))
else:
	c = 0
	for i in b:
		if i > 0:
			c += 1
	print(c)


n = int(input())
p = input().split(' ')
res = set(p)
contar = 0
for i in res:
	if i == '0':
		continue
	else:
		contar += 1
print(contar)


n = int(input())
s = [int(i) for i in input().split()]
e = set()
for i in range(n):
	if s[i] > 0:
		e.add(s[i])
print(len(e))


n = int(input())
x = input()
a = []
for i in x.split():
	a.append(int(i))
s = set(a)
ways = len(s)
if 0 in s:
	ways -= 1
print(ways)


n = int(input())
s = [int(x) for x in input().split()]
m = []
count = 0
for i in range(len(s)):
	if s[i] not in m and s[i] != 0:
		m.append(s[i])
if len(m) > 0:
	mx = max(m)
	count += 1
	for i in range(len(m)):
		if m[i] < mx:
			count += 1
print(count)


n = int(input())
l = [int(num) for num in input().split()]
l = list(set(l))
if 0 in l:
	print(len(l) - 1)
else:
	print(len(l))


n = input()
print(len(set(filter(lambda x: x != '0', input().split()))))


n = int(input())
a = list(map(int, input().strip().split()))[:n]
b = set(a)
l = len(b)
if 0 in b:
	print(l - 1)
else:
	print(l)


def solve(a) -> int:
	ans = 0
	n = len(a)
	for i in range(n):
		good = a[i] > 0
		for j in range(i):
			if a[i] == a[j]:
				good = False
		if good:
			ans += 1
	return ans
input()
print(solve(list(map(int, input().split()))))


n = int(input())
line = input()
nums = list(map(int, line.split(' ')[0:n]))
nums = set(filter(lambda x: x > 0, nums))
print(len(nums))


n = int(input())
a = list(map(int, input().split()))
a = sorted(a)
s = 0
se = set(a)
se.discard(0)
print(len(se))


num = int(input())
scores = list(map(int, input().split()))
scores = list(filter(lambda x: x != 0, scores))
scores = sorted(scores)
scores = set(scores)
print(len(scores))


n = int(input())
l = list(map(int, input().split()))
l.sort()
i = 0
while l[i] <= 0:
	i += 1
print(len(set(l[i:])))


def chef(s, d):
	s = int(s)
	d = list(map(int, d))
	d = list(filter(lambda a: a != 0, d))
	d.sort()
	count = 1
	for i in range(0, len(d) - 1):
		if d[i + 1] != d[i]:
			count += 1
	return count

def main():
	s = int(input())
	d = input().split()
	print(chef(s, d))
main()


n = int(input())
a = list(map(int, input().split(' ')))
a.sort()
c = 0
i = 0
while i < n:
	if a[i] != 0:
		i = i + a.count(a[i])
		c = c + 1
	else:
		i = i + 1
print(c)


t = int(input())
s = input()
l = []
l = s.split()
s = set(l)
if '0' in s:
	print(len(s) - 1, end='')
else:
	print(len(s), end='')


n = int(input().strip())
parts = [int(x) for x in input().strip().split(' ')]
m = [0] * 601
total = 0
for p in parts:
	if p and (not m[p]):
		total += 1
		m[p] = 1
print(total)


class Olympiad:

	def main(self):
		num = int(input())
		inp = [int(x) for x in input().split()]
		length = len(inp)
		dict = {}
		for i in range(length):
			if inp[i] == 0:
				continue
			dict.update({inp[i]: 1})
		print(str(len(dict)))
o = Olympiad()
o.main()


import sys
n = int(sys.stdin.readline())
liste = list(map(int, sys.stdin.readline().split()))
nb = 0
tab = [False] * 601
for loop in range(n):
	if not tab[liste[loop]] and liste[loop] != 0:
		nb += 1
		tab[liste[loop]] = True
print(nb)


n = int(input())
nums = list(map(int, input().split()))
unique_nums = set()
for num in nums:
	if num > 0:
		unique_nums.add(num)
print(len(unique_nums))


n = int(input())
mas = set(input().split())
print(len(mas) if '0' not in mas else len(mas) - 1)


input()
a = list(map(int, input().split()))
a.sort()
p = -1
s = 0
for i in range(0, len(a)):
	if a[i] != 0 and a[i] != p:
		s = s + 1
		p = a[i]
print(s)


n = int(input())
a = list(map(int, input().rstrip().split(' ')))
a.sort()
a = list(set(a))
if a[0] == 0:
	a.pop(0)
print(len(a))


a = int(input())
S = list(set([int(i) for i in input().split()]))
if S.count(0) != 0:
	print(len(S) - 1)
else:
	print(len(S))


n = int(input())
a = list(map(int, input().split()))
c = 0
f = [0] * max(a)
for i in range(n):
	f[a[i] - 1] += 1
f.reverse()
for i in range(len(f)):
	if f[i] != 0:
		c += 1
print(c)


n = int(input())
Set1 = set(map(int, input().split()))
count = 0
for i in Set1:
	for j in Set1:
		if j != 0 and i != 0 and (i <= j):
			count += 1
			res = 'Hi'
			break
print(count)


num = int(input())
lista = [int(n) for n in input().split(' ')]
maximo = list()
lista_aux = list()
for v in lista:
	lista_aux.append(v)
maxim = None
prem = 0

def Max(lista):
	max = 0
	for v in lista:
		if v > max:
			max = v
	return max
for cout in range(0, num):
	if cout == 0:
		maxim = Max(lista)
		if maxim != 0:
			maximo.append(maxim)
			prem += 1
	else:
		maxim = Max(lista_aux)
		if maxim != 0:
			maximo.append(maxim)
			prem += 1
	lista_aux.clear()
	for c in range(0, num):
		if lista[c] not in maximo:
			lista_aux.append(lista[c])
print(prem)


n = int(input())
scores = [int(c) for c in input().split(' ')]
dip = set()
for score in scores:
	if score > 0 and score not in dip:
		dip.add(score)
print(len(dip))


n = int(input())
L = [k for k in map(int, input().split()) if k != 0]
print(len(set(L)))


a_list = []
sum = 0
n = int(input())
str_num = input()
num = [int(i) for i in str_num.split()]
for j in num:
	if j != 0 and j not in a_list:
		a_list.append(j)
print(len(a_list))


n = int(input())
pontos = input().split()
resultados = []
for valor in pontos:
	if valor not in resultados and valor != '0':
		resultados.append(valor)
print(len(resultados))


n = int(input())
a = [0] * 601
for x in input().split():
	a[int(x)] = 1
a[0] = 0
print(sum(a))


numParticipants = int(input(''))
scores = [int(x) for x in input('').split(' ')]
prevScore = 0
subsets = 0
for score in sorted(scores):
	if score != prevScore:
		subsets += 1
	prevScore = score
print(subsets)


n = int(input())
li = [int(i) for i in input().split()]
d = dict()
for i in li:
	if i not in d and i != 0:
		d[i] = 1
print(len(d))


import math, itertools, fractions, heapq, collections, bisect, sys, queue, copy
sys.setrecursionlimit(10 ** 7)
inf = 10 ** 20
mod = 10 ** 9 + 7
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]

def LI():
	return [int(x) for x in sys.stdin.readline().split()]

def I():
	return int(sys.stdin.readline())

def F():
	return float(sys.stdin.readline())

def LS():
	return sys.stdin.readline().split()

def S():
	return input()

def summarizeList(l):
	sl = sorted(l)
	a = sl[0]
	c = 1
	res = []
	for x in sl[1:]:
		if x == a:
			c += 1
		else:
			res.append([a, c])
			a = x
			c = 1
	res.append([a, c])
	return res

def main():
	n = I()
	l = LI()
	sl = summarizeList(l)
	ans = 0
	for (x, c) in sl:
		if x != 0:
			ans += 1
	return ans
print(main())


from collections import Counter
n = int(input())
a = [int(x) for x in input().split() if x != '0']
print(len(Counter(a)))