编程题
### 问题描述
在一个古老的魔法世界中,坤坤发现了一个神奇的粘贴魔法。这种魔法可以让他复制任意连续的数字序列,并将其粘贴到序列的任意位置。例如,如果他拥有一个序列 $[1, 2, 3, 4, 5]$,他可以复制从第二个到第四个元素的子序列,并将其粘贴在第三个元素之后,得到新的序列 $[1, 2, 3, 2, 3, 4, 4, 5]$。
经过一段时间,坤坤进行了若干次(可能是零次)拷贝粘贴操作,得到了一个新的序列 $A$。然而,他想知道,他最初的序列可能是什么。他想找到可能的最小的初识序列。因此,你的任务是帮助坤坤,找到通过拷贝粘贴魔法得到序列 $A$ 的最小的初始序列的长度。
### 输入格式
第一行输入一个整数 $N$,表示得到的序列的元素个数。
第二行输入 $N$ 个空格分隔的整数 $A_1, A_2, ..., A_N$,代表得到的序列 $A$。
数据范围保证:$1 \leq N \leq 10^5$,$1 \leq A_i \leq 10^5$。
### 输出格式
输出一行,表示最小的初始序列的长度。
### 样例输入
```text
5
1 2 3 1 2
```
### 样例输出
```text
3
```
### 说明
在测试案例中,我们可以从 $[1, 2, 3]$ 开始,通过将其前两个元素复制到末尾,得到序列 $A$。