loj#P3158. 「NOI2019」序列

「NOI2019」序列

题目描述

给定两个长度为 nn 的正整数序列 {ai}\{a_i\}{bi}\{b_i\},序列的下标为 1,2,,n1, 2, \ldots , n。现在你需要分别对两个序列各指定恰好 KK 个下标,要求至少LL 个下标在两个序列中都被指定,使得这 2K2K 个下标在序列中对应的元素的总和最大

形式化地说,你需要确定两个长度为 KK 的序列 {ci},{di}\{c_i\}, \{d_i\},其中

$$1 \le c_1 < c_2 < \ldots < c_K \le n , 1 \le d_1 < d_2 < \ldots < d_K \le n $$

并要求

$$\Big| \{c_1, c_2, \ldots , c_K\} \cap \{d_1, d_2, \ldots , d_K\} \Big| \ge L $$

目标是最大化

i=1Kaci+i=1Kbdi\sum_{i=1}^K a_{c_i}+\sum_{i=1}^K b_{d_i}

输入格式

从文件 sequence.in 中读入数据。

本题输入文件包含多组数据。

第一行一个正整数 TT 表示数据组数。接下来每三行表示一组数据。

每组数据第一行三个整数 n,K,Ln, K, L,变量意义见题目描述。

每组数据第二行 nn 个整数表示序列 {ai}\{a_i\}

每组数据第三行 nn 个整数表示序列 {bi}\{b_i\}

输出格式

输出到文件 sequence.out 中。

对于每组数据输出一行一个整数表示答案。

5
1 1 1
7
7
3 2 1
4 1 2
1 4 2
5 2 1
4 5 5 8 4
2 1 7 2 7
6 4 1
1 5 8 3 2 4
2 6 9 3 1 7
7 5 4
1 6 6 6 5 9 1
9 5 3 9 1 4 2
14
12
27
45
62

数据范围与提示

对于所有测试点:$T \le 10 , 1 \le \sum n \le 10^6 , 1 \le L \le K \le n \le 2 \times 10^5 , 1 \le a_i, b_i \le 10^9$。

每个测试点的具体限制见下表:

测试点编号 nn\le n\sum n\le
131\sim 3 1010 3×1053\times 10^5
4,54,5 1818
6,76,7 3030
8108\sim 10 150150
111611\sim 16 2×1032\times 10^3
172117\sim 21 2×1052\times 10^5
222522\sim 25 10610^6