关闭

UVa 699 The Falling Leaves

112人阅读 评论(0) 收藏 举报
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
const int maxn = 1e5;
int sum[maxn];
void build(int p) {
  int v;
  scanf("%d", &v);
  if (v == -1) return;
  sum[p] += v;
  build(p - 1);
  build(p + 1);
}
bool init() {
  int v;
  scanf("%d", &v);
  if (v == -1) return false;
  memset(sum, 0, sizeof(sum));
  int pos = maxn / 2;
  sum[pos] = v;
  build(pos - 1);
  build(pos + 1);
  return true;
}
int main() {
//  freopen("input", "r", stdin);
  int i = 0;
  while (init()) {
    printf("Case %d:\n", ++i);
    int p = 0;
    while (sum[p] == 0) p++;
    printf("%d", sum[p++]);
    while (sum[p] != 0) printf(" %d", sum[p++]);
    printf("\n\n");
  }
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:76826次
    • 积分:4264
    • 等级:
    • 排名:第7128名
    • 原创:384篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条