勇士出门斗恶龙了!他需要通过 n 个关卡。
每个关卡要么是与怪物战斗,扣除一定的血量;要么是营地,给勇士增加一定的血量。
在旅途中,勇士**任意时刻**的血量不能低于或等于 0。问机器猫至少需要多少的初始血量,才能完成任务。
血量为正整数。
第一行,一个正整数 n,表示关卡数量。
第二行,共 n 个整数 a_i,表示每个关卡。
- 若 a_i>0,则表示这个关卡是营地,增加 a_i 的血量
- 若 a_i<0,则表示这个关卡是战斗,机器猫血量代价为 a_i
仅一行,一个正整数,表示机器猫需要的初始血量。
3 -100 -200 -300
601
5 -200 -300 1000 -100 -100
501
样例2说明:
机器猫带着 501 点血量出门,两场战斗之后剩下 1,恢复到 1001,两场战斗之后为 801,完成任务。
数据说明:
对于 30\% 的数据,n\leq 1000, 1\leq |a_i|\leq 100。
对于 100\% 的数据,n\leq 100000, 1\leq |a_i|\leq 10000。