编程题
### 问题描述
小蓝喜欢收集魔法卡片,每张魔法卡片上都有一个整数。现在她打算整理她的卡片收藏。她想把卡片按照非递减顺序排列,这样她就能更容易地找到她想要的卡片。
小蓝可以使用一种魔法操作:选择一个整数 $x$,将所有等于 $x$ 的卡片全部移到序列的开头或末尾。每次操作必须将所有等于 $x$ 的卡片一起移动。
现在小蓝想知道,至少需要进行多少次魔法操作,才能将卡片按照非递减顺序排列。请你帮助她解决这个问题。
### 输入格式
输入第一行包含一个整数 $n$($1 \leq n \leq 2\times 10^5$)表示卡片的数量。
输入第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \leq a_i \leq n$)表示卡片上的数字。
### 输出格式
对于每个查询,输出一个整数 - 排序卡片所需的最少操作次数。
### 样例输入
```
7
2 1 3 1 1 3 2
```
### 样例输出
```
2
```
### 说明
在这个示例中,我们可以先将所有的 $1$ 移到序列的开头,然后将所有的 $2$ 移到序列的开头,得到序列 $[1,1,1,2,2,3,3]$,只需要 $2$ 次操作即可将卡片排序。