n, *d = list(map(int, open(0).read().split()))



d.sort()



ans = 0

scale = 0

for i in d:

    if scale < i:

        ans += 1

    scale = i



print(ans)
import sys

sys.setrecursionlimit(10**9)



def main():

    n = int(eval(input()))

    d = [int(eval(input())) for i in range(n)]

    d = set(d)



    print((len(d)))

    return





if __name__ == "__main__":

    main()

    sys.exit(0)
n, *d = list(map(int, open(0).read().split()))
d.sort()
ans = 0
scale = 0
for i in d:
    if scale < i:
        ans += 1
    scale = i
print(ans)

import sys

sys.setrecursionlimit(10**9)


def main():
    n = int(eval(input()))
    d = [int(eval(input())) for i in range(n)]
    d = set(d)
    print((len(d)))
    return


if __name__ == "__main__":
    main()
    sys.exit(0)

-n, *d = list(map(int, open(0).read().split())) -d.sort() -ans = 0 -scale = 0 -for i in d: -    if scale < i: -        ans += 1 -    scale = i -print(ans) +import sys + +sys.setrecursionlimit(10**9) + + +def main(): +    n = int(eval(input())) +    d = [int(eval(input())) for i in range(n)] +    d = set(d) +    print((len(d))) +    return + + +if __name__ == "__main__": +    main() +    sys.exit(0)