#P10647. [NordicOI 2023] Ice Cream Machines

[NordicOI 2023] Ice Cream Machines

题目背景

翻译自 NordicOI 2023 B 题 Ice Cream Machines。

题目描述

在你的冰淇淋店里有 nn 个顾客在排队,店里一共有 mm 种口味,每个人都有想买的口味,但是很不幸,店内只有 kk 台机子,无法完全供应所有的口味,所以,如果下一个人要的和这台机子内原有的口味不同时,他需要清洗这台机子并更换成他喜欢的口味。

现在这 nn 个人按照从 1n1 \sim n 的顺序买冰淇淋,你作为一个聪明绝顶的店主需要合理安排他们使用哪台机子,使得清洗机子的次数最少,输出这个最少次数。

注意一台机子如果之前没人用的时候默认需要被清洗(自始至终没人用则不需要)。

输入格式

第一行三个整数 n(1n2×105)n (1 \leq n \leq 2 \times 10^5)m(1m2×105)m (1 \leq m \leq 2 \times 10^5)k(1k2×105)k (1 \leq k \leq 2 \times 10^5),分别表示一共有 nn 个人,店里有 mm 种口味的冰淇淋和 kk 台机子。

然后 nn 行,每行一个整数 ci(1cim)c_i (1 \leq c_i \leq m),表示第 ii 个人喜欢吃的口味编号。

输出格式

输出清洗次数最少时所需的次数。

8 3 1
2
3
3
1
2
1
1
3
6
8 3 2
2
3
3
1
2
1
1
3
4

提示

本题采用捆绑测试

  • Subtask 1(7 points):n1000n \le 1000m10m \leq 10k=1k = 1
  • Subtask 2(12 points):n1000n \le 1000m10m \leq 10k2k \leq 2
  • Subtask 3(22 points):n1000n \leq 1000m10m \leq 10k5k \leq 5
  • Subtask 4(11 points):n1000n \leq 1000m200m \leq 200k100k \leq 100
  • Subtask 5(14 points):n2×105n \leq 2 \times 10^5m500m \leq 500k100k \leq 100
  • Subtask 6(13 points):n2×105n \leq 2 \times 10^5m2×105m \leq 2 \times 10^5k100k \leq 100
  • Subtask 7(21 points):无特殊限制。

对于所有测试数据,1n2×1051 \le n \le 2\times 10^51m2×1051 \leq m \leq 2 \times 10^51k2×1051 \leq k \leq 2 \times 10^51cim1 \leq c_i \leq m