编程题
### 问题描述
给定一个长度为 $n$ 的整数数列 $A$,$A$ 中第 $i$ 个元素为 $A_i$($1 \leq i \leq n$),你需要在 $A$ 中选择一个数(假设为 $A_k$),然后进行以下操作:
- 在 $A$ 中选择一段不包含 $A_k$ 的区间,将此区间元素全部删除(删除后 $A$ 的长度也随之变化)。
当 $A$ 中元素均相同时,操作停止。
根据选择的 $A_k$ 的不同,操作次数也会不同,请你求出最少需要操作多少次,可以让 $A$ 中元素均相同。
### 输入格式
输入共 $2$ 行。
第一行包含一个整数 $n$,表示整数数列 $A$ 中元素的个数。
第二行包含 $n$ 个整数,表示整数数列 $A$ 中各元素的值。
### 输出格式
输出共一行,包含一个整数,表示让 $A$ 中所有元素相等所需要的最少次数。
### 样例输入
```
5
1 2 1 3 1
```
### 样例输出
```
2
```
### 评测数据规模
对于所有评测数据,$1 \leq n \leq 10^5$,$1 \leq A_i \leq 10^9$。