游戏闯关
内存限制: 256 Mb时间限制: 1000 ms
题目描述
小爱现在想要通关一个游戏,已知这个游戏主角的生命值没有上限,但当游戏过程中任意时刻一旦生命值小于等于零、则游戏会结束。
已知该游戏共有 n 的关卡,第 i 个关卡有一个参数 ai,当 ai>0 时表示小爱在通过此关卡时,会补充 ai 点生命值;当 ai<0 时表示小爱在通过此关卡时,会损失 ai 点生命值;当 ai=0 时表示小爱在通过此关卡时,不会有生命值的改变。
请问,小爱最少在初始时最少需要拥有多少点生命,才能顺利通关?
输入格式
输入共两行:
第一行,一个正整数表示关卡数 n
第二行,n 个整数,表示a1,...,an
输出格式
输出共一行,一个整数表示答案
数据范围
- 对于 30% 的数据,1≤n≤20;
- 对于 60% 的数据,1≤n≤10^3;
- 对于 100% 的数据,1≤n≤10^5,−10^3≤ai≤10^3。
样例数据
输入:
3
4 -7 2
输出:
4
输入:
3
1 0 1
输出:
1
说明:
不能出现生命值为0,因此初始状态也需要1点生命值
解析,假设开始为0点生命值,模拟整个过程,找到最低的生命值,要保证初始值加上这个最低值大于1,就可以保证整个过程中顺利通关,详见代码:
#include <bits/stdc++.h&g

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



