2240: 注水游戏

Memory Limit:256 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

有一个圆柱体水容器,最大容量为maxlen,刚开始这个水容器中有部分水beginlen,有n次任务,每次任务有一个参数ci,表示可以往容器中加入ci的水,或者放掉ci的水。当然了,我们加入或者放掉ci的水,得考虑实际情况,如果加入ci的水已经超过maxlen了,则不能加入,如果放掉ci的水后,容器的水量变成负数了,也是不能放掉的。如果在执行某次任务时,即不能加入水也不能放掉水,则任务失败。 

请你计算,n个任务完成后,水容器中的最大水量。

Input

从文件"watergame.in"读入数据。 

第一行依次输入n,beginlen,maxlen。 

第二行依次输入n个值,代表每次任务给定的ci。

Output

输出到文件"watergame.out"。 

输出n个任务完成后水容器中的最大水量,如果有某个任务失败,则输出-1。

Sample Input Copy

3 3 9
1 1 5 

Sample Output Copy

8

HINT

样例输入 2 

3 1 15 

7 12 14 

 样例输出 2 

-1 

数据范围与提示 

有阶梯数据,即有些数据较小。 

对于100%的数据,1<=n<=50,1<=maxlen<=1000,0<=beginlen<=maxlen,1<=ci<=maxlen。