#CCBCHBAHAI0000174. Số giá trị khác nhau trong miền 0..1000 (Distinct Values in the Range 0..1000)

Số giá trị khác nhau trong miền 0..1000 (Distinct Values in the Range 0..1000)

Số giá trị khác nhau trong miền 0..1000 (Distinct Values in the Range 0..1000)

Nguồn: Phước Hưng OJ

Phiên bản: Phước Hưng OJ Extended

Đề bài

Cho mảng aa gồm nn số nguyên, mỗi giá trị nằm trong miền [0,1000][0,1000].

Hãy tính số lượng giá trị phân biệt xuất hiện trong mảng, tức là lực lượng của tập

S={ai∣1≤i≤n}.S=\{a_i\mid 1\le i\le n\}.

Input

  • Dòng 1 chứa số nguyên nn.
  • Dòng 2 chứa nn số nguyên a1,a2,…,ana_1,a_2,\ldots,a_n.

Output

In ∣S∣|S|.

Subtask

Subtask 1 (20 điểm): 1≤n≤501\le n\le 50 và 0≤ai≤1000\le a_i\le 100.

Subtask 2 (30 điểm): 1≤n≤50001\le n\le 5000 và 0≤ai≤5000\le a_i\le 500.

Subtask 3 (50 điểm): 1≤n≤1000001\le n\le 100000 và 0≤ai≤10000\le a_i\le 1000.

Ví dụ

Input

8
0 7 7 1000 0 5 5 9

Output

5

Giải thích

Các giá trị phân biệt là {0,5,7,9,1000} nên đáp án bằng 5.