import sys



import numpy as np



input = sys.stdin.readline





def ii(t: type = int):

    return t(eval(input()))





def il(t: type = int):

    return list(map(t, input().split()))





def iml(N: int, t: type = int):

    return [t(eval(input())) for _ in range(N)]





N = ii()

D = iml(N)



print((np.unique(D).size))

import sys



input = sys.stdin.readline





def ii(t: type = int):

    return t(eval(input()))





def il(t: type = int):

    return list(map(t, input().split()))





def iml(N: int, t: type = int):

    return [t(eval(input())) for _ in range(N)]





N = ii()

D = iml(N)



print((len(set(D))))
import sys
import numpy as np

input = sys.stdin.readline


def ii(t: type = int):
    return t(eval(input()))


def il(t: type = int):
    return list(map(t, input().split()))


def iml(N: int, t: type = int):
    return [t(eval(input())) for _ in range(N)]


N = ii()
D = iml(N)
print((np.unique(D).size))

import sys

input = sys.stdin.readline


def ii(t: type = int):
    return t(eval(input()))


def il(t: type = int):
    return list(map(t, input().split()))


def iml(N: int, t: type = int):
    return [t(eval(input())) for _ in range(N)]


N = ii()
D = iml(N)
print((len(set(D))))

-import numpy as np -print((np.unique(D).size)) +print((len(set(D))))