Problem:
 Score : 300 points    Problem Statement You drew lottery N times. In the i -th draw, you got an item of the kind represented by a string S_i .  How many kinds of items did you get?      Constraints  1 \leq N \leq 2\times 10^5  S_i consists of lowercase English letters and has a length between 1 and 10 (inclusive).         Input Input is given from Standard Input in the following format:  N  S_1  :  S_N       Output Print the number of kinds of items you got.        Sample Input 1 3
apple
orange
apple      Sample Output 1 2  You got two kinds of items: apple and orange .       Sample Input 2 5
grape
grape
grape
grape
grape      Sample Output 2 1       Sample Input 3 4
aaaa
a
aaa
aa      Sample Output 3 4

Solution (Python):


import sys

INF = 1145141919


def solve(N: int, S: "List[str]"):
    def list_uniq_count(l):
        return len(set(l))
    return list_uniq_count(S)


def main():

    sys.setrecursionlimit(10 ** 6)

    def iterate_tokens():
        for line in sys.stdin:
            for word in line.split():
                yield word
    tokens = iterate_tokens()
    N = int(next(tokens))  
    S = [next(tokens) for _ in range(N)]  
    print(solve(N, S))


if __name__ == '__main__':
    main()

Solution (Python):
import copy

N=int(input())
a=[]
ans=[]
for i in range(N):
    a.append(input())
ans=copy.copy(a)
ans=list(set(ans))
print(len(ans))

Solution (Python):
n = int(input())
s =[input() for _ in range(n)]

print(len(set(s)))

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

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

list_x = []

N = int(input())
for i in range(N):
    a = input()
    list_x.append(a)

list_x = set(list_x)

print(len(list_x))

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

Solution (Python):
n=int(input())
s={input() for _ in range(n)}

print(len(s))

Solution (Python):
n=int(input())
s=[input() for _ in range(n)]

print(len(set(s)))

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

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

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

Solution (Python):
def main():
    import math
    n=int(input())
    S=set()
    ans=0
    for _ in range(n):
        s=input()
        if s not in S:
            ans+=1
            S.add(s)
    print(ans)
if __name__ == '__main__':
    main()

Solution (Python):
N = int(input())
se = {-1}
for i in range(N):
  se.add(input())
print(len(se)-1)

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

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

print(len(set(s)))

Solution (Python):
import sys
n = int(input())
_set = set()
for i in range(n):
    s = sys.stdin.readline().strip()
    _set.add(s)
print(len(_set))

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

S.sort()

dup = 0;
for i in range(N):
    if i!=0:
        if S[i] == S[i-1]:
            dup += 1

print(N-dup)

Solution (Python):
N = int(input())
a = []
for i in range(N):
  f = input()
  a.append(f)
  
a=list(set(a))

print(len(a))

Solution (Python):
N = int(input())
S = [input() for _ in range(N)]

print(len(set(S)))

Solution (Python):
import sys,math

input = sys.stdin.readline
 

def inp():
    return(int(input()))
def inara():
    return(list(map(int,input().split())))
def insr():
    s = input()
    return(list(s[:len(s) - 1]))
def invr():
    return(map(int,input().split()))



t=inp()
number=set()
for _ in range(t):
	x=input()
	number.add(x)
print(len(number))

Solution (Python):
n = int(input())
s = [input() for _ in range(n)]
ans = len(list(set(s)))
print(ans)

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

Solution (Python):
def function(args):
    d=dict()
    for s in args:
        d[s] = 0
    
    return str(len(d))

if __name__ == '__main__':
    N=int(input())
    SN = []
    for i in range(N):
        SN.append(input())
    print(function(SN))

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

Solution (Python):
import collections
n = int(input())
s = [input() for i in range(n)]
c = collections.Counter(s)
l = len(c.most_common())

print(l)

Solution (Python):

n=int(input())
dict={}
sum=0
for i in range(n):
    s=input()
    if s not in dict.keys():
        dict[s]=1
        sum+=1
    else:
        sum+=0
print(sum)

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

s = set()
for _ in range(n):
  s.add(input())

print(len(s))

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

Solution (Python):
N = int(input())
li = []
for i in range (N):
  s_i = input()
  li.append(s_i)
print(len(set(li)))

Solution (Python):
N = int(input())
S = []
for n in range(N):
    S.append(input())
print(len(set(S)))

Solution (Python):
t = int(input())
lottery = set()
for tc in range(t):
  s = input()
  lottery.add(s)
print(len(lottery))

Solution (Python):
N = int(input())
s = set()

for i in range(N):
    s.add(input())
    
print (len(s))

Solution (Python):
n = int(input())
a = []
for _ in range(n):
    s = input()
    a.append(s)

ans = list(set(a))
print(len(ans))

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

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

Solution (Python):
from collections import Counter
n=int(input())
l=[]
for i in range(n):
    s=input()
    l.append(s)
freq=dict(Counter(l))
ans=list(freq.values())
print(len(ans))

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

Solution (Python):
n = int(input())
s = [str(input()) for _ in range(n)]

print(len(set(s)))

Solution (Python):
n = int(input())
s = [str(input()) for _ in range(n)]

print(len(set(s)))

Solution (Python):
"""
at-abc164c.py
2020-05-06
/usr/bin/python3
Info Fields (opt.)
- Type: 
- Keywords: set,
- Notes:
"""
if __name__ == "__main__":
    fruits = set()
    n=int(input())
    for i in range(n):
        fruits.add(input())
    print(len(fruits))

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

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


s_list = []
for i in range(n):
    s = str(input())
    s_list.append(s)

s_list = list(set(s_list))
print(len(s_list))

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

print(len(set(s)))

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

Solution (Python):
from sys import stdin


def solve(ls):
    return len(set(ls))


n = int(input())
ls = []
for i in range(n):
    ls.append(stdin.readline())
print(solve(ls))

Solution (Python):
import itertools
import math
import collections
n = int(input())
s = []
for i in range(n):
    s.append(input())

c = collections.Counter(s)
print(len(c.keys()))

Solution (Python):
n = int(input())
L = [input() for i in range(n)]

print( len(set(L)))

Solution (Python):
import collections
N = int(input())
S = [input() for _ in range(N)]

c = collections.Counter(S)
print(len(c))

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

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

Solution (Python):
def main():
    input1 = input()
    N = int(input1)
    S = [0]*N
    result = 0
    for i in range(N):
        input2 = input()
        S[i] = str(input2)

    set_S = []
    set_S = set(S)
    result = len(set_S)
    
    print(result)

if __name__ == "__main__":
    main()

Solution (Python):
import collections
n=int(input())
l=[]
for i in range(n):
    s=input()
    l.append(s)
freq=dict(collections.Counter(l))
ans=list(freq.values())
print(len(ans))

Solution (Python):
goods = set()

n = int(input())

for i in range(n):
  goods.add(input())

print(len(goods))

Solution (Python):
N=int(input())
S=set()
for _ in range(N):
  S.add(input())
print(len(S))

Solution (Python):
N = int(input())
S = [input() for i in range(N)]
ans = 1
S. sort()

for i in range(N-1):
  if S[i] !=S[i+1]:
    ans += 1
    
print(ans)

Solution (Python):
s = []
n = int(input())
for _ in range(0, n):
    s.append(input())

print(len(set(s)))

Solution (Python):


n = int(input())
x = {}
for i in range(n):
  s = str(input())
  x[s] = 1

print(len(x))

Solution (Python):
n = int(input())
d = {}
for i in range(n):
    s = input()
    if not(s in d): d[s] = 1

print(len(d))

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

print(len(set(S)))

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

mydict = {}

for i in range(N) :
  s = input()
  if(s in mydict) :
    continue
  else :
    mydict[s] = 1
    
    
print(len(mydict))

Solution (Python):
n = int(input())
s = [input() for i in range(n)]
s.sort()
ans = 1
for i in range(1,n):
  if not s[i]==s[i-1]:
    ans += 1
print(ans)

Solution (Python):
from typing import List

def gacha_kinds(N: int, S_i: List[str]) -> int:
    kinds = set(S_i)
    return len(kinds)

if __name__ == '__main__':
    N = int(input())
    S_i = [input() for i in range(N)]

    res = gacha_kinds(N, S_i)
    print(res)

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

S = {}

for i in range(n):
    S[input()] = True

print(len(S))

Solution (Python):
"""
at-abc164c.py
2020-05-06
/usr/bin/python3
Info Fields (opt.)
- Type: 
- Keywords:
- Notes:
"""
if __name__ == "__main__":
    fruits = set()
    n=int(input())
    for i in range(n):
        fruits.add(input())
    print(len(fruits))

Solution (Python):


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

s_noncov = set(s)

print(len(s_noncov))

Solution (Python):

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

Solution (Python):
import sys

n = int(input())

cur = set()

for _ in range(n):
    s = input()
    cur.add(s)

print(len(cur))

Solution (Python):
print(len(set([input() for i in range(int(input()))])))

Solution (Python):
N = int(input())
s = [input() for i in range(N)]
k = sorted(s)
d = 0
for i in range(N-1):
	if(k[i] == k[i+1]):
		d+=1
		
print(N-d)

Solution (Python):



def main():
    n = int(input())
    S = [input() for _ in range(n)]

    print(len(set(S)))


if __name__ == "__main__":
    main()

Solution (Python):
n = int(input())
s_s = []
for _ in range(n):
    s_s.append(input())
s_s = list(set(s_s))
print(len(s_s))

Solution (Python):
n = int(input())
sdict = dict()
for _ in range(n):
    s = input()
    try:
        tryproc = sdict[s]
    except:
        sdict[s] = True
print(len(sdict))

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

S = [str(input()) for _ in range(N)]

answer = []
answer = list(set(S))


    
        


print(len(answer))

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

clip = set()
for i in range(N):
    S = input()
    clip.add(S)

    
print(len(clip))

Solution (Python):
n = int(input())
result_dict = dict()
for i in range(n):
    string = input()
    result_dict[string] = 1

print(len(result_dict.keys()))

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

get = []

for i in range(n):
    get.append(input())

print(len(set(get)))

Solution (Python):
n=int(input())
S=[input() for i in range(n)]

S = set(S)

print(len(S))

Solution (Python):
N=int(input())
src=[]
for n in range(N):
  src.append(input())
src=list(set(src))
print(len(src))

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

Solution (Python):
N = int(input())
L = [input() for _ in range(N)]

print(len(set(L)))

Solution (Python):
n = int(input())
s = [input() for _ in range(n)]

ss = set(s)
ans = len(ss)
print(ans)

Solution (Python):
N = int(input())
S = [str(input()) for _ in range(N)]

S.sort()

count = 1

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

print(count)

Solution (Python):
X = input()
a = []
for i in range(0, int(X)):
  a.append(input())
a.sort()
count = 1
for i in range(0, int(X)-1):
  if a[i] != a[i+1]:
    count += 1
print(count)

Solution (Python):
n=int(input())
l=[]
for i in range(n):
    l.append(str(input()))
print(len(set(l)))

Solution (Python):

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

print(len(set(s)))

Solution (Python):







def main():
    n = int(input())
    s = set()
    for i in range(n):
        t = input()
        s.add(t)
    print(len(s))
    return

if __name__ == "__main__":
    main()

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

Solution (Python):
mp = {}
n = int(input())
for i in range(n):
    s = input()
    mp.setdefault(s, 0)
    mp[s] += 1

print(len(mp))

Solution (Python):




import sys

def yn(b):
    print("Yes" if b==1 else "No")
    return

def resolve():
    readline=sys.stdin.readline
    n=int(readline())
    a=set()
    for i in range(n):
        a.add(readline().rstrip())
    print(len(a))
    return

if 'doTest' not in globals():
    resolve()
    sys.exit()

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

Solution (Python):
N = int(input())
k = 0
S = list()
while N != k:
    S.append(str(input()))
    k += 1
S = set(S)
print(len(S))

Solution (Python):
N = int(input())
S = [input() for _ in range(N)]

A = set(S)
print(len(A))

Solution (Python):
N = int(input())
S = []
for _ in range(N):
  S.append(input())
from collections import defaultdict as ddict
ans = ddict(int)
for s in S:
  ans[s] += 1
print(len(ans))

Solution (Python):
print(len(set([input() for _ in range(int(input()))])))

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

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

Solution (Python):
N = int(input())
s = set()
for _ in range(N):
    s.add(input())
print(len(s))

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

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

Solution (Python):
N = int(input())
S = []
for i in range(N):
    s = input()
    S.append(s)
print(len(set(S)))

Solution (Python):
print(len({input() for _ in range(int(input()))}))

Solution (Python):
goods = []
for i in range((int)(input())):
   goods.append(input())
print(len(list(set(goods))))

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

def main():
    N = int(input())
    S_list = [input() for _ in range(N)]
    print(len(list(set(S_list))))

main()

Solution (Python):
n = int(input())
s_lst = [str(input()) for _ in range(n)]
s_set = list(set(s_lst))
ans = len(s_set)

print(ans)

Solution (Python):
n = int(input())
data = set()
for i in range(n):
	data.add(input())

print(len(data))

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

Solution (Python):
import math,string,itertools,fractions,heapq,collections,re,array,bisect,sys,copy,functools
import time,random

sys.setrecursionlimit(10**7)
inf = 10**20
eps = 1.0 / 10**10
mod = 10**9+7
mod2 = 998244353
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 list(map(int, sys.stdin.readline().split()))
def LLI(): return [list(map(int, l.split())) for l in sys.stdin.readlines()]
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 pe(s): return print(str(s), file=sys.stderr)
def JA(a, sep): return sep.join(map(str, a))
def JAA(a, s, t): return s.join(t.join(map(str, b)) for b in a)


def main():
    n = I()
    s = set(S() for _ in range(n))

    return len(s)


print(main())

Solution (Python):



n = int(input())
List = [input() for i in range(n)]
sort = sorted(List)
ans = 1
for i in range(1,n):
    if sort[i] != sort[i - 1]:
        ans += 1
print(ans)

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

list_a=[]

for i in range(N):
    list_a.append(input())
    
set_a=set(list_a)

print(len(set_a))

Solution (Python):
n = int(input())
m = {}
for i in range(n):
	s = input()
	m[s] = 1
print(len(m))

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

Ss = {}

for i in range(N):
  s = str(input())
  if not (s in Ss):
    Ss[s] = 1

print(len(Ss))

Solution (Python):
n = int(input())
print(len(set(input() for _ in range(n))))

Solution (Python):
n, *s = open(0).read().split()
print(len(set(s)))

Solution (Python):
N = int(input())
S = [input() for i in range(N)]

S_uniqu = list(set(S))
print (len(S_uniqu))

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

Solution (Python):
n = int(input())
Items = {}
init = True


for i in range(n):
    s = str(input())
    if init:
        Items[s] = 0
    else:
        Keys = Items.keys()
        duplicate = False
        key = ""
        for j in range(len(Items)):
            if Keys[j] == s:
                duplicate = True
                break
            else:
                duplicate = False
        if duplicate:
            Items[key] += 1
        else:
            Items[s] = 0

print(len(Items))

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

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

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

Solution (Python):
n = int(input())
s = [input() for _ in range(n)]

print(len(set(s)))

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

Solution (Python):
n = int(input())
get_ls = {input():1 for _ in range(n)}
print(len(get_ls))

Solution (Python):
n = int(input())
s = list(set([input() for _ in range(n)]))

print(len(s))

Solution (Python):
N = int(input())
dic = {}
ans = 0
for i in range(N):
    S = input()
    if dic.get(S) == None:
        dic[S] = 1
        ans += 1
print(ans)

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

Solution (Python):

import sys

def solve(N: int, S: "List[str]"):
    print(len(set(S)))
    return



def main():
    def iterate_tokens():
        for line in sys.stdin:
            for word in line.split():
                yield word
    tokens = iterate_tokens()
    N = int(next(tokens))  
    S = [next(tokens) for _ in range(N)]  
    solve(N, S)

if __name__ == '__main__':
    main()

Solution (Python):
import sys
sys.setrecursionlimit(10 ** 6)

int1 = lambda x: int(x) - 1
def II(): return int(input())

def MI(): return map(int, input().split())
def MI1(): return map(int1, input().split())

def LI(): return list(map(int, input().split()))
def LI1(): return list(map(int1, input().split()))
def LLI(rows_number): return [LI() for _ in range(rows_number)]

INF = float('inf')

def solve():
    n = II()
    S = [''] * n
    for i in range(n):
        S[i] = input()
        
    print(len(set(S)))

if __name__ == '__main__':
    solve()

Solution (Python):
from collections import Counter
def main():
    N=int(input())
    sarr=[]
    for _ in range(N):
        sarr.append(input())
    print(len(Counter(sarr)))
if __name__=='__main__':
    main()

Solution (Python):



import sys
sys.setrecursionlimit(10**7)
from pprint import pprint as pp
from pprint import pformat as pf

import math

import bisect


if __name__ == '__main__':
    types = set()
    n = int(input())
    for i in range(n):
        s = input()
        types.add(s)
        
        
    print(len(types))

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

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

Solution (Python):
n = int(input())
count = 0
lis = [None]*n
for i in range(n):
    mozi = input()
    lis[i] = mozi
print(len(set(lis)))

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

res = {input() for _ in range(N)}

print(len(res))

Solution (Python):
N = int(input())
A = set()
for i in range(N):
    S = input()
    A.add(S)
print(len(A))

Solution (Python):
print(len({*open(0)})-1)

Solution (Python):
print(len({*open(0)})-1)

Solution (Python):
n = int(input())
s = list(input() for i in range(n))
c = len(set(s))
print(c)

Solution (Python):
row = int(input())
item_list = [input() for i in range(row)]
print(len(set(item_list)))

Solution (Python):
N = int(input())
S = [input() for i in range(N)]

st = set()
for s in S:
  st.add(s)
print(len(st))

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

Solution (Python):
n = int(input())
s = [input() for i in range(n)]

print(len(set(s)))

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

Solution (Python):
m = int(input())
n = [input() for i in range(m)]

nn = list(set(n))

print(len(nn))

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

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

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

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

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

Solution (Python):
N = int(input())
S = set()
for _ in range(N):
    S.add(input())

print(len(S))

Solution (Python):
N = int(input())
S = [input() for i in range(N)]

result = {}
for name in S:
    name = name.strip()
    if not name in result:
        result[name] = 0
a = len(result.keys())
print(a)

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

Solution (Python):
a = int(input())
ar = []
for i in range(a):
    l = input()
    ar.append(l)
print(len(set(ar)))

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

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

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

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

Solution (Python):
i = int(input())
a = [input() for i in range(i)]
b = set(a)
c = len(b)
print(c)

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

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

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

Solution (Python):
import collections

n = int(input())

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

c = collections.Counter(data)



print(len(list(c)))

Solution (Python):
N=int(input())
S=[input() for s in range(N)]
print(len(set(S)))

Solution (Python):
N = int(input())
l = set()
for i in range(N):
  Si = input()
  if not Si in l:
    l.add(Si)
print(len(l))

Solution (Python):
n = int(input())
S = {input() for _ in range(n)}
ans = len(S)
print(ans)

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

print(len(set(keihin)))

Solution (Python):

def main():
    n = int(input())
    al = set()
    for i in range(n):
        al.add(input())
    
    print(len(al))

if __name__ == '__main__':
    main()

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

s = set()

for i in range(N):
	s.add(input())

print(len(s))

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

Solution (Python):
import collections
N=int(input())
a=[input() for i in range(N)]
print(len(collections.Counter(a)))

Solution (Python):




def main():
  names = set()

  for _ in range(int(input())):
    names.add(input().strip())

  print(len(names))


if __name__ == '__main__':
  main()

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

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

S = []
for i in range(N):
    S.append(input())
    
print(len(set(S)))

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

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

S_dict = {}

for i in range(N):
  S = str(input())
  S_dict[S] = S_dict.get(S,0) + 1

print(len(S_dict))

Solution (Python):
import collections

n = int(input())

a = []

for _ in range(n):
  a.append(input())

c = collections.Counter(a)

print(len(c))

Solution (Python):
Row = int(input())
List = [input() for i in range(Row)]





newList = list(set(List))


print(len(newList))

Solution (Python):
N = int(input())
S = [input() for i in range(N)]
S.sort()
c = 1
for i in range(N-1):
  if S[i] == S[i+1]:
    continue
  else:
    c += 1
print(c)

Solution (Python):
N=int(input())
A=set()
for i in range(N):
  s=input().rstrip()
  if not s in A: A.add(s)
print(len(A))

Solution (Python):
i = int(input())
l = []
for x in range(i):
    l.append(input())
print(len(list(set(l))))

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

Solution (Python):
n = int(input())
a = []
for i in range(0,n,1):
  a.append(input())
print(len(set(a)))

Solution (Python):
from __future__ import division, print_function
import sys
if sys.version_info[0] < 3:
    from __builtin__ import xrange as range
    from future_builtins import ascii, filter, hex, map, oct, zip

import os, sys, bisect, copy
from collections import defaultdict, Counter, deque

if os.path.exists('in.txt'): sys.stdin=open('in.txt','r')
if os.path.exists('out.txt'): sys.stdout=open('out.txt', 'w')

def input(): return sys.stdin.readline()
def mapi(arg=0): return map(int if arg==0 else str,input().split())


n = int(input())
st = set()
for i in range(n):
    st.add(input().strip())
print(len(st))

Solution (Python):
N=int(input())
SS=set()
while N!=0:
  S=input()
  SS.add(S)
  N=N-1
print(len(SS))

Solution (Python):
n = int(input())
dpa = {}
for i in range(n):
	s = input()
	dpa[s] = 1
print(len(dpa))

Solution (Python):
import collections

N = int(input())
li = [input() for i in range(N)]
c = collections.Counter(li)

print(len(c))

Solution (Python):
n=int(input())
lis=[]
for i in range(n):
    a=input()
    lis.append(a)

m=0
lis.sort()
for i in range(n-1):
    if lis[i]==lis[i+1]:
        m+=1

print(int(n-m))

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

for n in range(n):
  set_.add(input())
  
print(len(set_))

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

n = int(input())
s = set()
for _ in range(n):
    s.add(input().rstrip())
print(len(s))

Solution (Python):
N=int(input())
S=set([input() for _ in range(N)])

print(len(S))

Solution (Python):
def main():

    n = int(input())
    db = set()

    for i in range(n):
        db.add(input())

    print(len(db))

main()

Solution (Python):
n=int(input())
cnt=0
s=set()
for i in range(n):
    s1=input()
    if s1 not in s:
        cnt+=1
        s.add(s1)
print(cnt)

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

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

Solution (Python):
import collections

N = int(input())
S = []
for _ in range(N):
    s = input()
    S.append(s)

c = collections.Counter(S)
print(len(c))

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

a = {}
for i in range(n):
    s = input()
    a[s] = 1

print(len(a))

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

Solution (Python):



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


s_list = list(set(s_list))
ans = len(s_list)


print(ans)

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

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

Solution (Python):
n = int(input())
gacha = []

for i in range(n):
  gacha.append(input())
print(len(set(gacha)))

Solution (Python):
group = set()
for _ in range(int(input())):
  group.add(input())
print(len(group))

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

Solution (Python):

N= int(input())
S =[]
for _ in range(N):
    S.append((input()))
print(len(set(S)))

Solution (Python):
N = int(input())
s_list = set(input() for _ in range(N))
print(len(s_list))

Solution (Python):
N=int(input())
a=[]
for _ in range(N):
  a.append(input())
len_a=set(a)
print(len(len_a))

Solution (Python):


n = int(input())

a = {}
for x in range(n):
    s = input()
    a[s] = 1

print(len(a.keys()))

Solution (Python):


n = int(input())

a = {}
for x in range(n):
    s = input()
    a[s] = 1

print(len(a.keys()))

Solution (Python):


n = int(input())

a = {}
for x in range(n):
    s = input()
    a[s] = 1

print(len(a.keys()))

Solution (Python):


n = int(input())

a = {}
for x in range(n):
    s = input()
    a[s] = 1

print(len(a.keys()))

Solution (Python):


n = int(input())

a = {}
for x in range(n):
    s = input()
    a[s] = 1

print(len(a.keys()))

Solution (Python):


n = int(input())

a = {}
for x in range(n):
    s = input()
    a[s] = 1

print(len(a.keys()))

Solution (Python):


n = int(input())

a = {}
for x in range(n):
    s = input()
    a[s] = 1

print(len(a.keys()))

Solution (Python):


n = int(input())

a = {}
for x in range(n):
    s = input()
    a[s] = 1

print(len(a.keys()))

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

for _ in range(n):
    s = input()
    S.add(s)

print(len(S))

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

l = []
for _ in range(n):
    l.append(input())
print(len(set(l)))

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

print(len(set(input() for i in range(time))))

Solution (Python):
n = int(input())
ans = {}
for i in range(n):
    s = input()
    ans[s] = 1
print(len(ans))

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

items = set()

for i in range(n):
  items |= {input()}
  
print(len(items))

Solution (Python):
N=int(input())
s=set()
for i in range(N):
    s.add(input())

print(len(s))

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

shop_item = []*number

for i in range(0,number):
    shop_item.append(input())

print(len(set(shop_item)))

Solution (Python):
n=int(input())
d = {}

for i in range(n):
    d[input()] = 1

print(len(d))

Solution (Python):
n = int(input())
*s, = [input() for _ in range(n)]
sets = set()
for si in s:
    sets.add(si)
print(len(sets))

Solution (Python):
n = int(input())
s = [input() for _ in range(n)]

sset = set(s)
print(len(sset))

Solution (Python):
N = int(input())
s = []
for i in range(N):
	s.append(input())
s.sort()
ans = 0
x = 0
for k in range(N):
	if x != s[k]:
		x = s[k]
		ans += 1
print(ans)

Solution (Python):
s = int(input())
keihin = []
for i in range(s):
    word = (input())
    keihin.append(word)

list_set = set(keihin) 
unique_list = (list(list_set)) 
print(len(unique_list))

Solution (Python):
n = int(input())
d = {}
for i in range(n):
    s = input()
    d.setdefault(s,len(d)+1)
print(len(d))

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

Solution (Python):
n=int(input())
a=[]
 
for i in range(n):
  word=input()
  a.append(word)
print(len(set(a)))

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

Solution (Python):
n=int(input())
a=[]
 
for i in range(n):
  word=input()
  a.append(word)
print(len(set(a)))

Solution (Python):
n=int(input())
a=[]
 
for i in range(n):
  word=input()
  a.append(word)
print(len(set(a)))