小明的书桌上有**两摞书**,A 摞有 N 本,B 摞有 M 本,都竖直叠放着。
- A 摞从上往下数第 i 本需要 A_i 分钟读完;
- B 摞从上往下数第 i 本需要 B_i 分钟读完。
小明不停地做同一个动作:**选一摞还有书的桌子,读掉最上面那本,把它拿走**。
给定总时间上限 K 分钟,问他**最多能读完多少本**?(除了读书本身,其他时间忽略不计。)
注意:因为每次只能拿最上面那本,所以"读了 A 摞的第 3 本"必然意味着"A 摞的第 1、2 本也读过了"。也就是说,每摞书实际读掉的都是**从上面连续的一段**。
N M K
A_1 A_2 ... A_N
B_1 B_2 ... B_M
一个整数:最多能读完的本数。
3 4 240 60 90 120 80 150 80 150
3
3 4 730 60 90 120 80 150 80 150
7
5 4 1 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000
0
| t1 | 10 | N,M \le 10,A_i,B_i \le 100 |
| t2 | 20 | N,M \le 300,A_i,B_i \le 1000 |
| t3 | 30 | N,M = 3000,A_i,B_i \le 10^9,K\le10^9 |
| t4 | 40 | N,M \le 2\times10^5,A_i,B_i \le 1000,K 约为总时间的 3/4 |
样例1说明:读 A 的第 1 本(60)、B 的第 1 本(80)、A 的第 2 本(90),共 230 分钟读完 3 本。也可以读 A 的 1、2 本加 B 的第 1 本,同样是 3 本;想要 4 本至少要 230+80=310 或 60+90+120+… ,都超过 240,所以答案 3。
| 时间限制 | 1 秒 |
| 内存限制 | 128 MB |