uva 10562 - Undraw the Trees

原创 2013年12月03日 12:44:16
#include <iostream>
#include <sstream>
#include <cstdio>
#include <cstring>
#include <vector>

using namespace std;
void dfs(char s[210][210], int x, int y, int dep)
{
    for(int i = y; s[x][i] == '-'; ++i)
        if(s[x+1][i] != ' ' && s[x+1][i] && s[x+1][i] != '#')
        {
            printf("%c(", s[x+1][i]);
            if( x+2 < dep && s[x+2][i] == '|'){
                int j;
                for(j = i; j&&s[x+3][j-1] == '-'; --j);
                dfs(s, x+3, j, dep);
            }
            printf(")");
        }
    return;
}

int main()
{
    int t;
    scanf("%d", &t);
    getchar();
    while(t--)
    {
        char s[210][210];
        memset(s, 0, sizeof(s));
        int dep = 1;
        while(gets(s[dep])){
            if(s[dep][0] == '#')
                break;
            ++dep;
        }
        int len = strlen(s[1]);
        for(int i = 0; i < len; ++i)
            s[0][i] = '-';
        printf("(");
        dfs(s, 0, 0, dep);
        printf(")\n");
    }
    return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

UVa 10562 - Undraw the Trees (不限制儿子个数的树)

10562 - Undraw the Trees 2073 29.14% 552 85.69% 题目链接: http...

UVa 10562 Undraw the Trees (二叉树先序遍历)

10562 - Undraw the Trees Time limit: 3.000 seconds  http://uva.onlinejudge.org/index.php?option=com_...

UVa 10562 - Undraw the Trees解题报告

题意:根据图形化的树,输出前序遍历的节点。 思路:一开始我用边读边建的方法遍历,后来发现由于输入的两棵子树数据都在同一行,行不通。这道题的关键就在于处理"--------" 区间决定的子树。在网上...

UVA - 10562 Undraw the Trees

Problem D Undraw the Trees Input: Standard Input Output: Standard Output Time Limit: 2 Second...

Uva - 10562 - Undraw the Trees

直接递归遍历输出就可以,不用建立二叉树,每4行一次递归。输入的方法注意,直接用scanf和cin读取次数T都是直接运行错误,必须用fgets来读取。 AC代码: #include #includ...

UVA 10562 - Undraw the Trees

很是艰难,写完后看别人的代码都是直接dfs,而没有直接建树,

UVA - 10562 Undraw the Trees(看图建树)

Problem D Undraw the Trees Input: Standard Input Output: Standard Output Time Limit: 2 Second...

UVA - 10562 Undraw the Trees

Input The first line of the input file (which you can assume comes from standard input) contains th...

uva 10562 - Undraw the Trees

点击打开链接 题目意思:  给定一个多叉树的图,要求把图转化为一颗树,最后输出相应的内容。 解题思路:  1 建树 + 前序遍历输出 。这题的输入就是一个很麻烦的事了,我是采用一个二维的char数组来...

10562 - Undraw the Trees

Professor Homer has been reported missing. We suspect that his recent research works might have had ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)