1957 - Take it easy
时间限制 : 1 秒
内存限制 : 128 MB
小蜗牛是一名ACMer,他特别想加入校ACM队,为此他开始废寝忘食的刷题。小蜗牛不是神,也会因为做不对题目而烦恼。假设小蜗牛做对一道题,他的愉悦值会加一;如果做错一题,他的愉悦值会减一。给定一个初始的愉悦值N(0<=N<=10),当小蜗牛的愉悦值为0时他就会停止做题,转身去做其他的事情。但是他想知道自己这一天做了多少题,现在请你告诉他结果。
题目输入
有多组数据。
每组数据第一行给定一个N,表示小蜗牛的初始愉悦值。
第二行给定10个数字,表示有10个做题结果。
其中做题结果只会是1或者-1(1表示做对一题,-1表示做错一题)。
题目输出
每组数据请输出一行,输出小蜗牛做了多少题。
输入/输出样例
输入格式
2 1 1 1 1 1 -1 -1 -1 -1 -1 4 -1 -1 -1 -1 -1 1 1 1 1 1
输出格式
10 4
C语言解答
#include<stdio.h> int main() { int N,a[10],i,b; while(~scanf("%d",&N)) { b=0; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<10;i++) { if(N==0) break; if(a[i]>0) {N+=1; b++;} else {N-=1; b++;} } printf("%d\n",b); } return 0; }
C++解答
#include<stdio.h> int main(){ int n,a[15],i; while(scanf("%d",&n)!=EOF){ for(i=0;i<10;i++){ scanf("%d",&a[i]); } if(n==0) printf("0\n"); else{ for(i=0;i<10;i++){ n+=a[i]; if(n==0) break; } if(i==10) i--; printf("%d\n",i+1); } } return 0; }