T792987 【C1108】 - 我还是一棵树

题目描述

小明最近研究数据结构中的树,很是着迷,他把上次的一道树的题目修改了下,来考一下自己 上一次树的题目是:[T791982 【P1106】 - 查找树中的节点](https://www.luogu.com.cn/problem/T791982)的题目中的树如下: ![](https://cdn.luogu.com.cn/upload/image_hosting/itidqlph.png) 因为该树中存在重复的节点,所以必须给每个节点一个唯一的序号,小明想了想,可以用下面的格式去表示上面的树,这样可以避免掉那个唯一的序号(上图中的1,2,3...10这样的序号) `A(B(A,F),C(B(J)),B(C,I))` 那么请你基于上面小明想到的表示树的格式去解析构造出这棵树,然后对这棵树进行遍历和求出这棵树的高度 树中的节点中值域是一个字符,是一个大写字符,可以重复出现

输入格式

1行,小明想到的括号表示树的字符串,不包含空格 表示树的格式: `根节点(子树1,子树2,子树3...)` 每棵子树的表示方法与上面一致,是一种递归的括号表示法,这种表示法,子树的顺序很重要,是不能交换的,交换完就是不同的树了 只有一个根节点时,格式为:`根节点`

输出格式

第1行,树的先根遍历结果,每个节点值域使用一个空格分隔 第2行,树的后根遍历结果,每个节点值域使用一个空格分隔 第3行,树的层次遍历,每个节点值域使用一个空格分隔 第4行,树的高度(根节点的高度为1)

说明/提示

对于100%的数据满足:字符串长度