Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:256 MB

#1530. 老虎的题目

统计

题目描述

随着小老虎做题越来越多,现在可做小老师了,小老虎经常帮老师出题供信息学奥赛班的同学测试用。出题确实是一件麻烦事。现在有更麻烦的事了:
小老虎收集到了一大堆的题目,并且按照收集的时间顺序排成一排。每个题目都有自己的题面长度和难度。小老虎想用这些题出好多好多场比赛。但是呢,有要求:
同一场比赛的题目,必须是这一排中,连续的一段,但题目数量不限。
题面长度的总和,不能超过high,也不能低于low。
不允许出现两场比赛,使得其中一场的题目全部在另一场出现过了。(就是说,不同比赛的题目集合不能出现包含和被包含关系)
题目可以在不同比赛中重复使用。
现在,小老虎想知道,在满足以上条件的基础上……对不起,小老虎不是想知道最多出多少场,而是想知道,所有比赛的难度总和最大是多少?(定义一场比赛的难度为本场比赛出现的所有题目的难度和)

输入格式:

第一行是三个整数,N、low、high。
第二行有N个整数,描述了题面的长度。
第三行有N个整数,描述了题目的难度。

输出格式:

输出一个整数,所有比赛的最大难度总和。

输入样例#1:

6 4 5
1 3 3 2 2 1
2 3 1 4 5 2

输出样例#1:

21