4553:[GESP202512八级] 宝石项链
文件提交:无需freopen
内存限制:128 MB
时间限制:1.000 S
评测方式:普通裁判
金币值:
命题人:
提交:0
解决:0
题目描述
## 题目背景
2025 年 12 月 GESP C++ 八级编程第 2 题
## 题目描述
小 A 有一串包含 $n$ 枚宝石的宝石项链,这些宝石按照在项链中的顺序依次以 $1,2,\dots,n$ 编号,第 $n$ 枚宝石与第 $1$ 枚宝石相邻。项链由 $m$ 种宝石组成,其中第 $i$ 枚宝石种类为 $t_i$。
小 A 想将宝石项链分给他的好朋友们。具体而言,小 A 会将项链划分为若干**连续段**,并且需要保证每段都包含全部 $m$ 种宝石。请帮小 A 计算在满足条件的前提下,宝石项链最多可以划分为多少段。
## 输入格式
第一行,两个正整数 $n,m$,分别表示宝石项链中的宝石的数量与种类数。
第二行,$n$个正整数 $t_1,t_2,\dots,t_n$,表示每枚宝石的种类。
## 输出格式
输出一行,一个整数,表示宝石项链最多可以划分的段数。
## 样例
```input1
6 2
1 2 1 2 1 2
```
```output1
3
```
```input2
7 3
3 1 3 1 2 1 2
```
```output2
2
```
## 数据范围
对于 $40 \%$ 的测试点,保证 $2\le n\le 1000$。
对于所有测试点,保证 $2\le n\le 10^5$,$2 \le m \le n$,$1 \le t_i \le m$,保证 $1,2,\dots,m$ 均在 $t_1,t_2,\dots,t_n$ 中出现。