#P14627. [IATI2020 Day1]hunterxhunter
[IATI2020 Day1]hunterxhunter
题目描述
在漫画《Hunter × Hunter》的猎人考试第四阶段中,共有 N 名考生。每名考生都有一枚编号唯一的徽章,编号为 0..N-1。
同时,考官还准备了 N 张纸条,每张纸条上也写着一个 0..N-1 的编号。每位考生 i 抽取一张纸条,抽到的编号记为 T_i,表示他的目标考生编号。保证:
T_i != iT_i两两不同
也就是说,T 构成了一个没有自环的排列。
考试结束时,每位考生最终会持有若干枚徽章。对考生 i 而言:
- 编号为
i的徽章值K分; - 编号为
T_i的徽章值K分; - 其他任意徽章都只值
1分。
如果考生 i 最终得到的总分 不少于 2K,则视为通过本阶段考试。
显然,不可能所有人都通过。现在你对每位考生 i 有一个“喜爱值” L_i。你希望安排最终徽章的归属方式,使得所有通过者的喜爱值总和最大。
请你求出这个最大值。
输入格式
第一行输入两个整数 N, K,分别表示考生人数和特殊徽章(本人徽章、目标徽章)的分值。
接下来 N 行,每行输入两个整数 T_i, L_i,表示考生 i 的目标编号以及你对他的喜爱值。
输出格式
输出一行一个非负整数,表示所有通过者喜爱值之和的最大可能值。
数据范围
2 <= N <= 10^41 <= K <= N / 20 <= L_i <= 2 × 10^40 <= T_i < NT_i != iT_i != T_j(当i != j时)
子任务与评分
| 子任务 | 分值 | N 范围 |
额外限制 |
|---|---|---|---|
| 1 | 10 | <= 10 |
无 |
| 2 | 15 | <= 700 |
T_{P_j} = P_{(j+1) mod N} 且 L_{P_{N-1}} = 0 |
| 3 | <= 10^4 |
||
| 4 | 10 | <= 700 |
T_{P_j} = P_{(j+1) mod N} |
| 5 | <= 10^4 |
||
| 6 | 20 | <= 700 |
无 |
| 7 | <= 10^4 |
其中 P 是一个满足 P_0 = 0 的 0..N-1 排列。
样例 #1
输入 #1
8 2
5 12
6 111
4 101
0 13
1 105
7 14
2 108
3 9
输出 #1
324
样例 #2
输入 #2
8 3
5 12
6 111
4 101
0 13
1 105
7 14
2 108
3 9
输出 #2
240
说明
对于样例 1,一种最优方案是让考生 1 最终持有徽章 1 和 6,考生 4 持有徽章 0、4、7,考生 6 持有徽章 2、3、5。这样通过的考生为 1, 4, 6,答案为:
L_1 + L_4 + L_6 = 111 + 105 + 108 = 324