The Falling Leaves UVA

来源:互联网 发布:全球社交软件排名 编辑:程序博客网 时间:2024/06/06 08:15

问题类型:二叉树,DFS

03pie’s solution for [UVA-699]:
题目链接

#include<iostream> #include<cstring>using namespace std;const int maxn=1000;int sum[maxn];void build(int p){    int v;cin>>v;    if(v==-1)   return;    sum[p]+=v;    build(p-1);    build(p+1);}bool init(){    int v;    cin>>v;    if(v==-1)   return false;    memset(sum,0,sizeof(sum));    int pos=maxn/2;    sum[pos]=v;    build(pos-1);    build(pos+1);}int main(){    int kase=0;    while(init()){        int p=0;        while(sum[p]==0) p++;        cout<<"Case "<<++kase<<":\n"<<sum[p++];        while(sum[p]!=0) cout<<" "<<sum[p++];        cout<<"\n\n";    }    return 0;}
0 0
原创粉丝点击