#B. 乌鸦喝水

    Type: Default 1000ms 256MiB

乌鸦喝水

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

一只机械乌鸦,只会机械性执行任务。它的面前有一个容量为 mm 的瓶子,初始时瓶子的水量为 xx 。有 nn 次任务需要乌鸦执行。每次任务有一个参数 cic_i,表示可以往瓶子中加入 cic_i 的水,或者喝掉 cic_i的水,乌鸦可以选择加入 cic_i 的水或者喝掉 cic_i 的水。加入或者喝掉 cic_i 的水,得符合实际情况,如果加入 cic_i 的水已经超过瓶子的容量了,则不能加入,如果瓶子里剩余的水不足 cic_i了,也是不能喝掉的。

如果在执行某次任务时,即不能加入水也不能喝掉水,则任务失败。

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

输入格式

第一行依次输入 n,x,mn,x,m

第二行依次输入 nn 个值,代表每次任务给定的 cic_i

输出格式

输出 nn 个任务完成后瓶子中的最大水量。

如果有某个任务失败,则输出 1-1

样例输入输出

3 3 9
1 1 5 
8
3 1 15
7 12 14 
-1

说明/提示

样例1:总共有 33 个任务,瓶子初始水量为 33, 最大容量为 99。第一次任务时可以喝掉容量为 11 的水,第二次任务时加入容量为 11 的水,第三次任务时加入容量为 55 的水。最后瓶子有容量为 88 的水。其他方案最后的值不会大于 88

样例2:总共有 33 个任务,瓶子初始水量为 11, 最大容量为 1515。第一次任务时只能加入容量为 77 的水,第二次任务既不能加入也不能喝掉容量为 1212 的水。

数据范围

对于 100%100\% 的数据,1n50,1m1000,0x,cim1 \le n \le 50,1 \le m \le 1000,0 \le x,c_i \le m

入门组—DP(2)

Not Claimed
Status
Done
Problem
5
Open Since
2024-12-20 0:00
Deadline
2024-12-28 23:59
Extension
24 hour(s)