Problem:


Score : 200 points

Problem Statement

An X-layered kagami mochi (X ≥ 1) is a pile of X round mochi (rice cake) stacked vertically where each mochi (except the bottom one) has a smaller diameter than that of the mochi directly below it. For example, if you stack three mochi with diameters of 10, 8 and 6 centimeters from bottom to top in this order, you have a 3-layered kagami mochi; if you put just one mochi, you have a 1-layered kagami mochi.

Lunlun the dachshund has N round mochi, and the diameter of the i-th mochi is d_i centimeters. When we make a kagami mochi using some or all of them, at most how many layers can our kagami mochi have?

Constraints

1 ≤ N ≤ 100

1 ≤ d_i ≤ 100

All input values are integers.

Input

Input is given from Standard Input in the following format:

N
d_1
:
d_N

Output

Print the maximum number of layers in a kagami mochi that can be made.

Sample Input 1

4
10
8
8
6

Sample Output 1

3

If we stack the mochi with diameters of 10, 8 and 6 centimeters from bottom to top in this order, we have a 3-layered kagami mochi, which is the maximum number of layers.

Sample Input 2

3
15
15
15

Sample Output 2

1

When all the mochi have the same diameter, we can only have a 1-layered kagami mochi.

Sample Input 3

7
50
30
50
100
50
80
30

Sample Output 3

4



Sample input:
4
10
8
8
6


Sample output:
3

Submission status: Accepted

Solution code:
N = int(input())
D = [int(input()) for i in range(N)]

D.sort()

front = D[0]
count = 1
for i in range(len(D)-1):
    if front < D[i+1]:
        count += 1
        front = D[i+1]
print(count)

Submission status: Accepted

Solution code:
N = int(input())

d = [int(input()) for _ in range(N)]
print(len(set(d)))

Submission status: Accepted

Solution code:

n = int(input())
mochi = []
for _ in range(n):
    mochi.append(int(input()))

mochi_set = set(mochi)
print(len(mochi_set))

Submission status: Accepted

Solution code:
# coding: utf-8
N=int(input())
Mochi=[]
for i in range(N):
    d=int(input())
    if d not in Mochi:
        Mochi.append(d)
print(len(Mochi))

Submission status: Accepted

Solution code:
N = int(input())
d = [int(input()) for i in range(N)]
d.sort()
cnt, cur = 0, 0
for i in d:
    if(i != cur):
        cur = i
        cnt += 1
print(cnt)

Submission status: Accepted

Solution code:
n = int(input())
d = {int(input()) for _ in range(n)}
print(len(d))

Submission status: Accepted

Solution code:
n = int(input())
d = sorted([int(input()) for _ in range(n)], reverse=True)

cont = 1
mochi = [0]

for i in d:
    if mochi[-1] > i:
        cont += 1
    mochi.append(i)

print(cont)

Submission status: Accepted

Solution code:
n = int(input())
d = list(map(int, [input() for i in range(n)]))
d = sorted(d, reverse=True)

count = 0
pre = 101
for x in d:
    if pre > x:
        count += 1
        pre = x
    continue
print(count)

Submission status: Accepted

Solution code:
N = int(input()) #1行目のNを取得する

s = [int(input()) for i in range(N)] #複数行の数値の入力を取得

print(len(sorted(set(s))))

Submission status: Accepted

Solution code:
def read_values():
    return map(int, input().split())


def read_list():
    return list(read_values())


def main():
    N = int(input())
    S = set()
    for _ in range(N):
        S.add(int(input()))

    print(len(S))


if __name__ == "__main__":
    main()

Submission status: Accepted

Solution code:
N = int(input())
a = [int(input()) for i in range(N)]

a = set(a)
print(len(a))

Submission status: Accepted

Solution code:
# -*- coding: utf-8 -*-

N = int(input())
ds = [int(input()) for _ in range(N)]

s = list(set(ds))
s.sort()
print(len(s))

Submission status: Accepted

Solution code:
import sys
input = sys.stdin.readline
n=int(input())
d=[int(input()) for _ in range(n)]
d.sort()
cnt=1
for i in range(1,n):
    if d[i]!=d[i-1]:
        cnt+=1
print(cnt)

Submission status: Accepted

Solution code:
N = int(input())
input_list = [input() for _ in range(N)]
print(len(set(input_list)))

Submission status: Accepted

Solution code:
N = int(input())
S = {input() for i in range(N)}
print(len(S))

Submission status: Accepted

Solution code:
N=int(input())
d = []
for _ in range(N):
    d.append(int(input()))
D=list(set(d))
print(len(D))

Submission status: Accepted

Solution code:
import sys
input = sys.stdin.readline
N = int(input())
d = []
for _ in range(N):
    d.append(int(input()))
from collections import Counter
c = Counter(d)
print(len(c.keys()))

Submission status: Accepted

Solution code:
N = int(input())
d = [int(input()) for x in range(N)]
G = set(d)
print(len(G))

Submission status: Accepted

Solution code:
n = int(input())
d = set(int(input()) for _ in range(n))

print(len(d))

Submission status: Accepted

Solution code:
# coding: utf-8

N = int(input())
d = [int(input()) for x in range(N)]

d = set(d)

print(len(d))

Submission status: Accepted

Solution code:
n = int(input())

a = list() 
for i in range(n):
  a.append(int(input()))

aSorted = sorted(a,reverse=True)

stackNum = 1 #first is 1  
for j in range(len(aSorted)):
  if j == len(aSorted)-1:
    break
  if aSorted[j] > aSorted[j+1]:
    stackNum += 1

print(stackNum)

Submission status: Accepted

Solution code:
import sys


def solve(inp):
    N = int(inp.readline())
    D = [int(inp.readline()) for i in range(N)]

    nums = {}
    for d in D:
        if d not in nums:
            nums[d] = 0
        nums[d] += 1

    r = 0
    for n in nums:
        if n > 0:
            r += 1

    return str(r)


def main():
    result = solve(sys.stdin)
    if result:
        print(result)


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
import sys


def solve(inp):
    N = int(inp.readline())
    D = sorted([int(inp.readline()) for i in range(N)])

    r = 0
    prev = 0
    for d in D:
        if d != prev:
            r += 1
            prev = d

    return str(r)


def main():
    result = solve(sys.stdin)
    if result:
        print(result)


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
N = int(input())

ds = []
for i in range(N):
    ds.append(int(input()))

print(len(set(ds)))

Submission status: Accepted

Solution code:
temp=input()
d=[]
for x in range(int(temp)):
  d.append(int(input()))
d=list(set(d))
print(len(d))

Submission status: Accepted

Solution code:
# coding: utf-8


def main():

    cake_count = int(input())
    own_cakes = []
    for _ in range(cake_count):
        own_cakes.append(int(input()))
    own_cakes = sorted(own_cakes, reverse=True)

    kagami_cakes = [own_cakes.pop(0)]
    for i, cake in enumerate(own_cakes):
        if cake < kagami_cakes[-1]:
            kagami_cakes.append(own_cakes[i])
        else:
            continue

    print(len(kagami_cakes))

    return 0


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
# -coding: utf-8 -

n = int(input())
d = ["" for _ in range(n)]
for i in range(n):
    d[i] = int(input())

#print(d)
#print("---")

d = list(set(d))

print(len(d))

Submission status: Accepted

Solution code:
n=int(input())
A=[int(input()) for _ in range(n)]
print(len(set(A)))

Submission status: Accepted

Solution code:
# -*- coding: utf-8 -*-
 
import math
import itertools
import sys
import copy
 
# 入力
#A, B, C, D = map(int, input().split())
#L = list(map(int, input().split()))
N = int(input())

d = []
for _ in range(N) :
  d.append(int(input()))
d.sort(reverse=True)
#print (d)

cnt = 1
for i in range(1, N) :
  if d[i] != d[i-1] :
    cnt += 1

print (cnt)

Submission status: Accepted

Solution code:
N = int(input())
d = [int(input()) for j in range(N)]

# d = [1,2]

d.sort(reverse=True)

current_mochi = 0
next_mochi = 0
counter = 0

for i,num in enumerate(d):
    next_mochi = num
    if i == 0:
        counter+=1
        current_mochi = num
    elif i + 1 == len(d):
        if current_mochi > next_mochi:
            counter+=1
            break
        else:
            break
    elif current_mochi > next_mochi:
        counter+=1
        current_mochi = num

print(counter)

Submission status: Accepted

Solution code:
N = int(input())
print(len(set(map(int, [input() for _ in range(N)]))))

Submission status: Accepted

Solution code:
n=int(input())
List=[int(input()) for i in range(n)]
List.sort()
count=1
for i in range(n-1): 
  if List[i]!=List[i+1]:
    count +=1
print(count)

Submission status: Accepted

Solution code:
n=int(input())
print (len({input() for i in range(n)}))

Submission status: Accepted

Solution code:
n = int(input())
s = set(map(int,[input() for i in range(n)]))
print(len(s))

Submission status: Accepted

Solution code:
n=int(input())
li=[int(input()) for i in range(n)]
li_set=list(set(li))        #重複したものを一つにまとめる
print(len(li_set))

Submission status: Accepted

Solution code:
n = int(input())
d = [int(input()) for i in range(n)]
s = set()
for i in d:
    s.add(i)
print(len(s))

Submission status: Accepted

Solution code:
s=set()
for i in range(int(input())):
  s.add(int(input()))
print(len(s))

Submission status: Accepted

Solution code:
n = int(input())
d = [0] * n
for i in range(n):
    d[i] = int(input())
d.sort()
d = set(d)
ans = len(d)
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
d = []
for i in range(n):
    d.append(int(input()))
d1 = list(set(d))

print(len(d1))

Submission status: Accepted

Solution code:
n = int(input())
d = {int(input()) for i in range(n)}

print(len(d))

Submission status: Accepted

Solution code:
n = int(input())
d = [int(input()) for i in range(n)]
ans = 1
d.sort()

for i in range(1,n):
    if d[i] != d[i-1]:
        ans += 1

print(ans)

Submission status: Accepted

Solution code:
N = int(input())
d_i = [int(input()) for i in range(N)]

count = 0
num_i = [0 for i in range(100)]

for i in d_i:
    num_i[i - 1] += 1

for i in range(100):
    if num_i[i] != 0:
        count += 1

print(count)

Submission status: Accepted

Solution code:
n=int(input())
d=[int(input()) for i in range(n)]
d.sort()
a=1
for i in range(n-1):
    if d[i]!=d[i+1]:
        a+=1
print(a)

Submission status: Accepted

Solution code:
n = int(input())
d =[]
for i in range(n):
    d.append(input())
ans = set(d)
print(len(list(ans)))

Submission status: Accepted

Solution code:
from collections import defaultdict

N = int(input())
D = list([int(input()) for i in range(N)])

count = defaultdict(int)

for item in D:
    count[item] += 1
print(len(count.keys()))

Submission status: Accepted

Solution code:
n = int(input())
i = [int(input()) for _ in range(n)]
print(len(set(i)))

Submission status: Accepted

Solution code:
n = int(input())
list_d = [int(input()) for _ in range(n)]
print(len(set(list_d)))

Submission status: Accepted

Solution code:
n=int(input())
d=[]
for i in range(n):
	d.append(int(input()))
d=list(set(sorted(d)))
print(len(d))

Submission status: Accepted

Solution code:
#### abc085 b-kagami mochi
n=int(input())
d=[int(input()) for i in range(n)]
d_set=set(d)
ans=len(d_set)
print(ans)

Submission status: Accepted

Solution code:
l = [int(input()) for i in range(int(input()))]
print(len(set(l)))

Submission status: Accepted

Solution code:
N=int(input())
d = [int(input()) for _ in range(N)]

ds=sorted(d)
cnt=1
for i in range(N-1):
    if ds[i+1] > ds[i]:
        cnt +=1

print(cnt)

Submission status: Accepted

Solution code:
N = int(input())


mochi = set()

for _ in range(N):
    mochi.add(int(input()))

print(len(mochi))

Submission status: Accepted

Solution code:
import sys
import math
input = sys.stdin.readline


def main():
    sc = Scan()
    N = sc.intarr()[0]
    D = sc.intarr_ver(N)

    print(len(set(D)))


class Scan():

    def intarr(self):
        num_array = list(map(int, input().split()))
        return num_array

    def intarr_ver(self, n):
        return [int(input()) for _ in range(n)]

    def strarr(self):
        line = input()
        array = line.split(' ')
        array[-1] = array[-1].strip('\n')
        return array


def display(array):
    for a in range(len(array)):
        if len(array) - a != 1:
            print(array[a], end=' ')
        else:
            print(array[a])


def gcd(a, b):  # 最大公約数
    while b:
        a, b = b, a % b
    return a


def lcm(a, b):  # 最小公倍数
    return a * b // gcd(a, b)


main()

Submission status: Accepted

Solution code:
n=int(input())
d=list(input() for _ in range(n))
print(len(set(d)))

Submission status: Accepted

Solution code:
n=int(input())
nums=[input() for i in range(n)]
print(len(set(nums)))

Submission status: Accepted

Solution code:
mochi = []
for i in range(int(input())):

    mochi.append(input().strip())

print(len(list(set(mochi))))

Submission status: Accepted

Solution code:
N= int(input()) 
d = set([int(input()) for i in range(N)])
print(len(d))

Submission status: Accepted

Solution code:
a=int(input())
lis = []

for i in range(a):
  lis.append(int(input()))

new = list(set(lis))
print(len(new))

Submission status: Accepted

Solution code:
number_of_mochi = int(input())
mochies = set()

for _ in range(number_of_mochi):
    mochies.add(input())

print(len(mochies))

Submission status: Accepted

Solution code:
n=int(input())
print(len(set([input() for _ in range(n)])))

Submission status: Accepted

Solution code:
n=int(input())
print(len(set([input() for _ in range(n)])))

Submission status: Accepted

Solution code:
n=int(input())
int_list=[input() for i in range(n)]
print(len(set(int_list)))

Submission status: Accepted

Solution code:
N = int(input())
A = [int(input()) for i in range(N)]
A.sort()
B = []
for i in range(N):
    B.append(i)
C = dict(zip(B,A))
if N == 1:
    x = 1
else:
    for i in range(N-1):
        if C[i] == C[i+1]:
            del C[i]
print(len(C))

Submission status: Accepted

Solution code:
N = int(input()) #1行目のNを取得する
num_list = [input() for i in range(N)] #複数行の数値の入力を取得

num_list.sort(reverse = True)
result = 0

for i in range(N):
    if i == 0:
        result += 1
    else:
        if num_list[i] != num_list[i-1]:
            result += 1

print(result)

Submission status: Accepted

Solution code:
n = int(input())

d = []
for i in range(n):
    d.append(int(input()))

d_2 = sorted(d, reverse=True)
ans = 1
for i in range(1, n):
    if d_2[i] < d_2[i-1]:
        ans += 1
    else:
        continue

print(ans)

Submission status: Accepted

Solution code:
import sys
read = sys.stdin.read
readline = sys.stdin.readline
readlines = sys.stdin.readlines

N = int(input())

A = [0] * N

for i in range(N):
    a = int(readline())
    A[i] = a

print(len(set(A)))

Submission status: Accepted

Solution code:
import sys

n, *d = map(int, sys.stdin.read().split())

def main():
    return len(set(d))

if __name__ == '__main__':
    ans = main()
    print(ans)

Submission status: Accepted

Solution code:
n = int(input())
num_list = [int(input()) for i in range(n)]
result_list = []
for num in num_list:
    if num not in result_list:
        result_list.append(num)
print(len(result_list))

Submission status: Accepted

Solution code:
n = input()
mochi = [input() for i in range(int(n))]
print(len(set(mochi)))

Submission status: Accepted

Solution code:
N = int(input())
A = []
for i in range(N):
    A.append(int(input()))
A = list(set(A))
A.sort

print(len(A))

Submission status: Accepted

Solution code:
N = int(input())
a = [input() for i in range(N)]
print(len(set(a)))

Submission status: Accepted

Solution code:
n=int(input())
ln=set([int(input()) for a in range(n)])
print(len(ln))

Submission status: Accepted

Solution code:
n = int(input())
d = [int(input()) for i in range(n)]
d = list(set(tuple(d)))
print(len(d))

Submission status: Accepted

Solution code:
n = int(input())
ds = [int(input()) for _ in range(n)]
ans = len(set(ds))
print(ans)

Submission status: Accepted

Solution code:
from collections import Counter

N = int(input())
L = [int(input()) for i in range(N)]

print(len(Counter(L)))

Submission status: Accepted

Solution code:
N = int(input())
print(len(set([int(input()) for i in range(N)])))

Submission status: Accepted

Solution code:
n = int(input())
L = [int(input()) for i in range(n)]
s = set(L)
ans = len(s)
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
x = []
for i in range(n):
    x.append(int(input()))

x = sorted(x)
z = x[0]
y = 1
for i in x:
    if i > z:
        y += 1
        z = i
print(y)

Submission status: Accepted

Solution code:
import math

n = int(input())
s = {int(input()) for i in range(n)}
print(len(s))

Submission status: Accepted

Solution code:
N = int(input())
d = list()

ans = 1

for a in range(N):
    d.append(input())

Newd = sorted(d)


for i in range(N-1):
    if Newd[i] < Newd[i+1]:
        ans = ans + 1
    elif Newd[i] == Newd[i+1]:
        ans = ans
    else:
        break

print(ans)

Submission status: Accepted

Solution code:
import sys
n = int(input())

d = set([int(input()) for _ in range(n)])
print(len(d))

Submission status: Accepted

Solution code:
n = int(input())
c = [int(input()) for _ in range(n)]
print(len(set(c)))

Submission status: Accepted

Solution code:

X = int(input())
d = []
cnt = 0
for _ in range(X):
    d.append(int(input()))

now_d = d.pop(d.index(max(d)))
cnt +=1
while(d):
    if now_d == max(d):
        now_d = d.pop(d.index(max(d)))
        continue
    else:
        now_d = d.pop(d.index(max(d)))
        cnt += 1
print(cnt)

Submission status: Accepted

Solution code:
N = int(input())
D = [int(input()) for i in range(N)]
D.sort()
ans = 1
for i in range(N - 1):
    if D[i] < D[i + 1]: ans += 1
print(ans)

Submission status: Accepted

Solution code:
X=int(input())
d=[int(input()) for i in range(X)]
setd=set(d)
print(len(setd))

Submission status: Accepted

Solution code:
N = int(input())
M = []
for i in range(N):
    i = input()
    M.append(int(i))
print(len(set(M)))

Submission status: Accepted

Solution code:
number_of_mochi = int(input())
mochies = set()

for _ in range(number_of_mochi):
    mochies.add(input())

print(len(mochies))

Submission status: Accepted

Solution code:
n = int(input())
List=[int(input()) for i in range(n)]
List = set(List)
print(len(List))

Submission status: Accepted

Solution code:
a=int(input())
l={int(input()) for i in range(a)}
print(len(l))

Submission status: Accepted

Solution code:
n = int(input())
a = [int(input()) for i in range(n)]

print(len(set(a)))

Submission status: Accepted

Solution code:
N = int(input())
num =[]
sum = 1
for i in range(N):
	num.append(int(input()))
num = sorted(num)
for i in range(1,N):
	if(num[i] > num[i-1]):
		sum+=1
print(sum)

Submission status: Accepted

Solution code:
num = int(input())
mochi_s = list()
for _ in range(num):
    mochi_s.append(int(input()))

print(len(set(mochi_s)))

Submission status: Accepted

Solution code:
n=int(input())
l=[]
for i in range(n):
  l.append(int(input()))
l=sorted(l)
ans=1
for i in range(1,n):
  if l[i-1]<l[i]:
    ans+=1
print(ans)

Submission status: Accepted

Solution code:
# -*- coding: utf-8 -*-
N = int(input())
d = []
for i in range(N):
  d.append(int(input()))
d = list(set(d))
print(len(d))

Submission status: Accepted

Solution code:
N, *d = map(int, open(0).read().split())
d = sorted(set(d), reverse=True)
print(len(d))

Submission status: Accepted

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

Submission status: Accepted

Solution code:
N = int(input())
d_dic = {}

for i in range(1, N+1):
  d_dic[int(input())] = 0

print(len(d_dic))

Submission status: Accepted

Solution code:
N = int(input())
list_d = [0] * N

for i in range(N):
  list_d[i] = int(input())

list_d.sort()

result_cnt = 1
for i in range(N - 1):
  if list_d[i] != list_d[i + 1]:
    result_cnt += 1

print(result_cnt)

Submission status: Accepted

Solution code:
N = int(input())
d = [input() for i in range(N)]

d_uniq = []
for i in d:
  if i not in d_uniq:
    d_uniq.append(i)
print(len(d_uniq))

Submission status: Accepted

Solution code:
N=int(input())
d=[]
for i in range(N):
  d.append(int(input())) 
aft=set(d)
print(len(aft))

Submission status: Accepted

Solution code:
N = int(input())
d = [int(input()) for i in range(N)]
d = sorted(d,reverse=True)
start = d[0]
ans=0
cnt=1
for i in range(1, N):
    x = d[i]
    if start<=x:
        continue
    else:
        cnt+=1
    start = x
ans=cnt
print(ans)

Submission status: Accepted

Solution code:
#Kagami Mochi
N = int(input())
Mochi = [int(input()) for _ in range(N)]
Mochi.sort()
K = 1
for i in range(N-1):
    if Mochi[i] < Mochi[i+1]:
        K += 1
print(K)

Submission status: Accepted

Solution code:
N = int(input())
li = [int(input()) for x in range(N)]
tmp = None
ans_li = list()
for i in sorted(li):
    if i != tmp:
        ans_li.append(i)
    tmp = i
print(len(ans_li))

Submission status: Accepted

Solution code:
n = int(input())
input_list = list(sorted([int(input()) for _ in range(n)]))

count = 1
for i in range(n-1):
    if input_list[i] < input_list[i+1]:
        count += 1

print(count)

Submission status: Accepted

Solution code:
#-*- coding: utf-8 -*-# 
a = int(input())   # Nを取得
b = [] 
for i in range(a):  
    b.append(int(input()))
c = [0] * (100+1)  # バケツを用意
for i in b:
    c[i] = i  # バケツにb1,b2...bnを整列された状態で入れる
d = [] 
for g in c:
    if g != 0:
        d.append(g)  # バケツから0以外の要素を取得
print(len(d))

Submission status: Accepted

Solution code:
#-*- coding: utf-8 -*-# 
a = int(input())  # Nを取得
b = [] 
for i in range(a):  # b1,b2...bnを取得
     b.append(input())
c = set(b)  # 重複を削除
print(len(c))

Submission status: Accepted

Solution code:
print len(set(input()for _ in range(input())))

Submission status: Accepted

Solution code:
N=int(input())
A=[]
for i in range(N):
    A.append(int(input()))
print(len(set(A)))

Submission status: Accepted

Solution code:
#coding:utf-8
n = int(input())
d = [int(input()) for _ in range(n)]
d.sort(reverse=True)
d = list(set(d))
print(len(d))

Submission status: Accepted

Solution code:
n = int(input())
d = [int(input()) for i in range(n)]

num = [0]*101
for i in range(n):
    num[d[i]] += 1

ans = 0
for i in range(101):
    if num[i] > 0:  # num[i] == 1　の方が直観的に理解しやすいかも
        ans += 1
print(ans)

Submission status: Accepted

Solution code:
import collections
n = int(input())
li = [int(input()) for i in range(n)]
print(len(collections.Counter(li)))

Submission status: Accepted

Solution code:
n = int(input())
d = set([int(input()) for _ in range(n)])
d = list(d)
print(len(d))

Submission status: Accepted

Solution code:
n=int(input())
d=set([int(input()) for i in range(n)])
l=len(d)
print(l)

Submission status: Accepted

Solution code:
n = int(input())
li = []
for _ in range(n):
  li.append(int(input()))
  
li = sorted(list(set(li)))

print(len(li))

Submission status: Accepted

Solution code:
#!/usr/bin/env python3
import sys


def solve(N: int, d: "List[int]"):
    a = set(d)
    print(len(a))
    return


# Generated by 1.1.6 https://github.com/kyuridenamida/atcoder-tools  (tips: You use the default template now. You can remove this line by using your custom template)
def main():
    def iterate_tokens():
        for line in sys.stdin:
            for word in line.split():
                yield word
    tokens = iterate_tokens()
    N = int(next(tokens))  # type: int
    d = [int(next(tokens)) for _ in range(N)]  # type: "List[int]"
    solve(N, d)

if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
n = int(input())
mochi = []
for i in range(n):
  mochi.append(input())
set_mochi = set(mochi)
answer = len(set_mochi)
print(answer)

Submission status: Accepted

Solution code:
n = int(input())
a = [int(input()) for _ in range(n)]
a.sort(reverse = True)
print(len(list(set(a))))

Submission status: Accepted

Solution code:
n = int(input())
a = [0]*n
for i in range(n):
    a[i] = int(input())
a.sort(reverse = True)

s = set(a)
a_list = list(s)
print(len(a_list))

Submission status: Accepted

Solution code:
#n = int(input())
#n,k = map(int,input().split())
#x = list(map(int,input().split()))

n = int(input())

li = []
for i in range(n):
    li.append(int(input()))

li.sort()

cnt = 1
for i in range(1,n):
    if li[i-1] != li[i]:
        cnt += 1

print(cnt)

Submission status: Accepted

Solution code:
N = int(input())
d = []
for i in range(N):
    d.append(int(input()))

print(len(list(set(d))))

Submission status: Accepted

Solution code:
print(len(set(input() for i in range(int(input())))))

Submission status: Accepted

Solution code:
num = int(input())
print(len(set(map(int,[input() for i in range(num)]))))

Submission status: Accepted

Solution code:
N = int(input())
d = [int(input())for i in range(N)]
print(len(set(d)))

Submission status: Accepted

Solution code:
n = int(input())
list = []
for i in range(n):
    list.append(int(input()))

list.sort(reverse=True)

ans = 1

for j in range(n-1):

    if list[j] > list[j+1]:
        ans += 1

print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = set([input() for i in range(n)])
print(len(a))

Submission status: Accepted

Solution code:
#!/usr/bin/env python

n = int(input())
d = []
for i in range(n):
    # print(i)
    d.append(int(input()))

# print(d)
d_set = set(d)
# print(d_set)
print(len(d_set))

Submission status: Accepted

Solution code:
N = int(input())
mochi_list = [int(input()) for i in range(N)]
print(len(set(mochi_list)))

Submission status: Accepted

Solution code:
n = int(input())
d = [input() for i in range(n)]

d = set(d)

ans = len(d)
print(ans)

Submission status: Accepted

Solution code:
from collections import Counter
N=int(input())
lists=set(int(input())for i in range (N))
m=str(len(lists))
print(m)

Submission status: Accepted

Solution code:
n=int(input())
s=[]
for i in range(n):
    c=int(input())
    s.append(c)
ss=set(s)
print(len(ss))

Submission status: Accepted

Solution code:
print(len(set(input() for _ in range(int(input())))))

Submission status: Accepted

Solution code:
# -*- coding: utf-8 -*-

N = int(input())
d = []

for i in range(N):
    di = int(input())
    if di not in d:
        d.append(di)

print(len(d))

Submission status: Accepted

Solution code:
b = int(input())
nums = [int(input()) for i in range(b)]
print(len(set(nums)))

Submission status: Accepted

Solution code:
N = int(input())
d_list =[]
for i in range(N):
    d_list.append(int(input()))
    
d_list = list(set(d_list))
print(len(sorted(d_list)))

Submission status: Accepted

Solution code:
n = int(input())
ls_d = [input() for i in range(n)]

ans = 1
ls = sorted(ls_d)

for i in range(n - 1):
    if ls[i] < ls[i + 1]:
        ans += 1
        
print(ans)

Submission status: Accepted

Solution code:
_, *d = open(0)
print(len(set(d)))

Submission status: Accepted

Solution code:
_, *d = open(0).read().split()
print(len(set(d)))

Submission status: Accepted

Solution code:
dbflag=""

def debug(*args):
	if ""!=dbflag: print(*args)

if ""!=dbflag: _INDATA=open(dbflag)

def readline():
	if ""!=dbflag:return _INDATA.readline()
	else: return input()


result = -1

N = int(readline())

bag = set()

for i in range(0,N):
	d = int(readline())
	bag.add(d)

result = len(bag)

print(result)

Submission status: Accepted

Solution code:
# -*- coding: utf-8 -*-
n = int(input())
d = []
for i in range(n):
  d.append(int(input()))

d.sort(reverse=True)
ret = 0
prev = 101
for i in range(len(d)):
  if (d[i] < prev):
    ret += 1
    prev = d[i]

print(ret)

Submission status: Accepted

Solution code:
n =int(input())
print(len(set([input() for _ in range(n)])))

Submission status: Accepted

Solution code:
import itertools

n = int(input())
D = []
for _ in range(n):
    D.append(int(input()))

D_set = set(D)
ans = len(D_set)
print(ans)

Submission status: Accepted

Solution code:
for_num = int(input())

nums = []
for i in range(0,for_num):
  num = int(input())
  nums.append(num)
nums = set(nums)
print(len(nums))

Submission status: Accepted

Solution code:
N = int(input())
ans = 1
d = []
for i in range(N):
  d.append(int(input()))
sorted(d,reverse=True)
k = set(d)
K = list(k)
print(len(K))

Submission status: Accepted

Solution code:
count = int(input())

n = [input() for i in range(count)]

print(len(set(n)))

Submission status: Accepted

Solution code:
count = int(input())

dic = {}
for i in range(count):
    dic[input()] = i
dic = sorted(dic)
print(len(dic))

Submission status: Accepted

Solution code:
N = int(input())
X = [int(input()) for _ in range(N)]
X = list(set(X))
print(len(X))

Submission status: Accepted

Solution code:
N=int(input())
d = [input() for i in range(N)]

print(len(set(d)))

Submission status: Accepted

Solution code:
N=int(input())
d = [int(input()) for i in range(N)]
print(len((list(set(d)))))

Submission status: Accepted

Solution code:

N = int(input())
d = []

for _ in range(N):
    d.append(int(input()))
print(len(set(d)))

Submission status: Accepted

Solution code:
n = int(input())
D = list(set([int(input()) for i in range(n)]))
print(len(D))

Submission status: Accepted

Solution code:
N = int(input())

d = []
for i in range(N):
    tmp = int(input())
    if tmp in d:
        pass
    else:
        d.append(tmp)
        
print(len(d))

Submission status: Accepted

Solution code:
n = int(input())
d = []
for _ in range(n):
    d.append(int(input()))
print(len(set(d)))

Submission status: Accepted

Solution code:
N = int(input())                                
kagami_mochi = [int(input()) for i in range(N)] 
print(len(set(kagami_mochi)))

Submission status: Accepted

Solution code:
import sys
read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines


def main():
    N = int(readline())
    d = list(map(int, readlines()))
    print(len(list(set(d))))


main()

Submission status: Accepted

Solution code:
n=int(input())
a=set([int(input()) for i in range(n)])
print(len(a))

Submission status: Accepted

Solution code:
N = int(input())
mochi = set([int(input()) for _ in range(N)])
print(len(mochi))

Submission status: Accepted

Solution code:
if __name__ == '__main__':

	N = int(input())

	A = []
	for i in range(N):
		a = int(input())
		A.append(a)

	A = sorted(A,reverse=True)

	cnt = 1
	for i in range(len(A)-1):
		if A[i] > A[i+1]:
			cnt += 1

	print(cnt)

Submission status: Accepted

Solution code:
n=int(input())
s={int(input()) for i in range(n)}
print(len(s))

Submission status: Accepted

Solution code:
N = int(input())
d = []
i = 0
while i < N:
	d.append(input())
	i += 1

d.sort()

j = 1
ans = 1

while j < N:
	if d[j-1] >= d[j]:
		j += 1
	else:
		ans += 1
		j += 1

print(ans)

Submission status: Accepted

Solution code:
N = int(input())
mochi = []
for i in range(N):
    tmp = int(input())
    mochi.append(tmp)

mochi.sort(reverse=True)
ans = set(mochi)
print(len(ans))

Submission status: Accepted

Solution code:
n = int(input())
d = list(map(int,[input() for i in range(n)]))
print(len(list(set(d))))

Submission status: Accepted

Solution code:
n = int(input())
dl = []
for _ in range(n):
    d = int(input())
    dl.append(d)

print(len(set(dl)))

Submission status: Accepted

Solution code:
# -*- coding: utf-8 -*-

import numpy
import scipy

N = int(input())
D = []
for n in range(N):
    D.append(int(input()))
#print(D)

Ds = sorted(D, reverse=True)
#print(Ds)

c = 0
for i, d in enumerate(Ds):
    if i == 0:
        c += 1
    if d < Ds[i-1]:
        c += 1

print(c)

Submission status: Accepted

Solution code:
n = int(input())
ans = set()
[ans.add(int(input())) for i in range(n)]
print(len(ans))

Submission status: Accepted

Solution code:
n  = int(input())
dd = [input() for i in range(n)]

print(len(set(dd)))

Submission status: Accepted

Solution code:
n = int(input())
print(len(set(map(int,[input() for i in range (n)]))))

Submission status: Accepted

Solution code:
import numpy as np

N=int(input())
D=np.zeros((N,),int)

# 段を形成してゆく
for n in range(N):
    D[n]=int(input())

print(len(np.unique(D)))