1760.cpp
来自「哈尔滨工业大学ACM 竞赛网上在线试题集锦的源代码」· C++ 代码 · 共 52 行
CPP
52 行
/* This Code is Submitted by wywcgs for Problem 1760 on 2005-09-24 at 20:30:16 */
#include <stdio.h>
int main()
{
long total, stack[4], max;
int top, N, i, det;
while(scanf("%d", &N) == 1) {
if(N == 0) {
return 0;
} else {
max = -1;
total = 0;
top = 0;
for(i = 0; i < N; i++) {
scanf("%d", &det);
if(det != 0) {
if(top == 0) {
if(det > 0) {
stack[top++] = det;
}
} else {
if(det >= 0) {
stack[top-1] += det;
} else {
if(stack[top-1] > max) {
max = stack[top-1];
} if(stack[top-1] + det > 0) {
stack[top-1] += det;
} else {
top--;
}
}
}
}
}
if(top != 0) {
if(stack[top-1] > max) {
max = stack[top-1];
}
}
if(max > 0) {
printf("The maximum winning streak is %d.\n", max);
} else {
printf("Losing streak.\n");
}
}
}
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?