#P0129. 收集(collect)

收集(collect)

采用文件输入输出

题目描述

Nikola 喜欢收集足球队员的照片,并将其保存在相册中。他计划收集 NN 支球队的队员照片,其中每支球队都有 MM 张。

对于 Nikola 所收集的每支球队,该球队的照片数量 xx 能给他增加分数 BxB_x。他目前拥有球队 ii 的照片数量为 PiP_i

Nikola 的好朋友 Ivan 有两套完整的相册。Ivan 决定送 KK 张照片给 Nikola。Nikola 想要知道,在得到这 KK 张照片之后,它的相册所能得到的分数的最大值。

输入格式

第一行输入整数 N,M,KN,M,K

第二行输入 NN 个整数 PiP_i

第三行输入 M+1M+1 个整数 BiB_i,其中 BiB_i 表示一支球队收集到了 ii 张不同的照片能够获得 BiB_i 分。

对于 [0,M1][0,M-1] 内的每一个整数 tt,都满足 BtBt+1B_t \le B_{t+1}。同时 KN×Mi=1NPiK \le N \times M-\sum_{i=1}^N P_i

输出格式

输出能够得到的分数的最大值。

输入输出样例 #1

输入 #1

4 4 3
4 2 3 1
0 1 3 6 10

输出 #1

31

输入输出样例 #2

输入 #2

4 3 5
1 1 2 3
0 1 2 3

输出 #2

12

输入输出样例 #3

输入 #3

3 6 2
2 4 1
31 38 48 60 75 91 120

输出 #3

206

说明/提示

样例 1 解释

Nikola 一开始拥有球队 1,2,3,41,2,3,4 照片数量分别为 4,2,3,14,2,3,1。最优的方案是获得球队 2,32,3 照片分别 2,12, 1 张。此时分数最大,为 10+10+10+1=3110+10+10+1=31

数据规模与约定

对于 20%20\% 的数据,K=2K=2

对于 100%100\% 的数据,1N,M5001 \le N,M \le 5001Kmin(N×M,500)1 \le K \le \min(N \times M,500)0PiM0 \le P_i \le M0Bi1050 \le B_i \le 10^5