[2016-05-11][51nod][1344 走格子]

  • 时间:2016-05-11 15:59:05 星期三

  • 题目编号:[2016-05-11][51nod][1344 走格子]

  • 题目大意:有编号1-n的n个格子,机器人从1号格子顺序向后走,一直走到n号格子,并需要从n号格子走出去。机器人有一个初始能量,每个格子对应一个整数A[i],表示这个格子的能量值。如果A[i] > 0,机器人走到这个格子能够获取A[i]个能量,如果A[i] < 0,走到这个格子需要消耗相应的能量,如果机器人的能量 < 0,就无法继续前进了。问机器人最少需要有多少初始能量,才能完成整个旅程。

  • 分析:设置初始能量为零,如果能量降低到负数,答案就增加差值,相当于初始值增加,

  1. #include<stdio.h>
  2. using namespace std;
  3. int main(){
  4. long long n,tmp,ans = 0,cur = 0;
  5. scanf("%lld",&n);
  6. for(int i = 0 ; i < n ; ++i){
  7. scanf("%lld",&tmp);
  8. cur += tmp;
  9. if(cur < 0){
  10. ans += -cur;
  11. cur = 0;
  12. }
  13. }
  14. printf("%lld\n",ans);
  15. }


来自为知笔记(Wiz)


posted on 2016-05-11 16:01  红洋  阅读(604)  评论(0编辑  收藏  举报

导航