F. 节目录制
描述
在一个繁忙的电视台,有 nn 个热门节目,它们依次从 11 到nn 编号。但由于资源紧张,电视台只有三个录影棚:X, Y,ZX,Y,Z 。 电视台为这 nn 个节目组进行排期,表示为一个 mm 个整数构成的数列。例如 {1,4 ,3}1,4,3 表示节目组 1,4, 31,4,3 依次进行录制。由于拍摄时间段并不重叠,所以不用担心时间冲突问题。但是每个节目组所用的布景是不同的,所以每个节目组在录制前必须找到一个录影棚重新进行布景,或者重复使用之前该节目组已经布好的景(该录影棚没有其它节目组重新布景)。一开始,三个录影棚中都是空的,没有任何布景。为了节约布景带来的资源消耗,你需要安排节目组录制时使用的录影棚,让布景的总次数最小。
输入
第一行包含两个整数 n,mn,m ,分别表示节目组的数量和安排录制节目的数量。
第二行 mm 个整数,表示安排录制节目的顺序。保证每个节目都进行录制,但同一节目可能录制多次。
输出
一个整数,表示最小布景总次数。
样例 输入
4 7
1 2 3 4 3 2 1
输出
5
输入
4 11
3 3 1 3 2 2 2 3 1 3 4
输出
4
提示
对于 20% 的测试数据,n= 3,n≤m≤ 10n=3,n≤m≤10 。
对于 60% 的测试数据,1≤ n≤ 1000,n ≤m≤ 20001≤n≤1000,n≤m≤2000 。
对于100% 的测试数据,1≤ n≤ 10^5 ,n≤m≤ 2⋅10^51≤n≤10 5 ,n≤m≤2⋅10 5