题目链接: http://codeforces.com/problemset/problem/427/A
题目意思:
警察和小偷的故事:某城市要办大事儿,需要整治社会治安,但人手不够,需要雇佣零时工,应付突发情况,条件如下:
1、 一次雇佣的人不超过10个 (刚开始读成了总数不超过10个),超过10个就当10个人处理
2、一个零时工一生只能处理一个罪犯
3、如果没有零时工或者零时数少于犯罪的数量,则发生相应的犯罪数量。 如 p 个警察 t 个罪犯, 则发生 t - p 犯罪。
思路:将上面三个条件模拟出来即可:
/* ****
* @Codeforce Problem 427A. Police Recruits
* @ 2014.5.11
******/
#include <stdio.h>
int main(){
int i, t, n, C, P, ans;
scanf("%d", &n);
C = P = ans = 0;
for(i = 0; i < n; ++i){
scanf("%d", &t);
if(t > 10){
P += 10;
}
else if(t > 0){
P += t;
}
else if(t < 0){
if(P + t > 0)
P += t;
else{
ans += -P - t;
P = 0;
}
}
}
printf("%d\n", ans);
return 0;
}