CodeForces 427A

来源:互联网 发布:股权众筹系统源码 编辑:程序博客网 时间:2024/06/05 17:16

题意:

警察抓小偷,一共n 个人,-1表示小偷,整数表示警察的数量,一个警察只能抓他旁边的小偷,问没有抓住的小偷的数量。


输入:

3-1 -1 1
81 -1 1 -1 -1 1 1 1
11-1 -1 2 -1 -1 -1 -1 -1 -1 -1 -1


输出:

2

1

8

分析:

直接遍历,将所有的整数加和sum,遇到-1时判断,如果sum=0,就加一次,如果sum>0就sum -1.



代码:

#include <bits/stdc++.h>using namespace std;const int maxn=100000+10;int a[maxn];int main(){    int n,sum=0,num=0;    cin >>n;    for(int i=0; i<n; i++)    {        cin >>a[i];        if(a[i]==-1)        {            if(sum==0)                ++num;            else                --sum;        }        else            sum+=a[i];    }    cout <<num<<endl;    return 0;}



0 0
原创粉丝点击