AT_abc461_c [ABC461C] Variety

题目描述

有 $N$ 颗宝石,第 $i$ 颗宝石的颜色(用整数表示)为 $C_i$,价值为 $V_i$。 请从这 $N$ 颗宝石中选择 $K$ 颗宝石,选出的宝石必须包含至少 $M$ 种不同的颜色。 求所选宝石的价值总和的最大值。(保证在给定的输入中总可以做出这样的选择。)

输入格式

输入从标准输入读入,格式如下: > $N\ K\ M$ > $C_1\ V_1$ > $C_2\ V_2$ > $\vdots$ > $C_N\ V_N$

输出格式

输出所能取得的最大价值总和。

说明/提示

### 样例解释 1 在此样例中,从五颗宝石中选三颗,要求至少包含两种不同的颜色。 选择第 $2,3,5$ 颗宝石,颜色分别为 $1,1,3$,共两种颜色。它们的总价值为 $40 + 50 + 20 = 110$,这是可能取得的最大值。 ### 样例解释 2 宝石和选择数量与样例输入 1 相同,但要求至少包含三种不同颜色。 选择第 $3,4,5$ 颗宝石,颜色分别为 $1,2,3$,共三种颜色。它们的总价值为 $50 + 10 + 20 = 80$,这是可能取得的最大值。 ### 样例解释 3 注意防止溢出。 ### 数据范围 - $1 \leq M \leq K \leq N \leq 2 \times 10^5$ - $1 \leq C_i \leq N$ - $1 \leq V_i \leq 10^9$ - 至少存在 $M$ 种不同颜色的宝石。 - 所有输入均为整数。 由 ChatGPT 5 翻译