CF125B.Simple XML

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Simple XML

题目描述

我们将字符串 定义为一个开标签,其中 xx 是任意一个小写拉丁字母。每个开标签都对应一个闭标签 ,其中 xx 是相同的字母。

标签可以相互嵌套:在这种情况下,一个开闭标签对位于另一个标签对的内部。

我们定义 XML-文本如下:

  • 空字符串是一个 XML-文本。
  • 如果 ss 是一个 XML-文本,那么 s=<s' = <a> + s + </a>a> 也是一个 XML-文本,其中 aa 是任意一个小写拉丁字母。
  • 如果 s1s_1s2s_2 是 XML-文本,那么 s1+s2s_1 + s_2 也是一个 XML-文本。

给定一个 XML-文本(保证该文本是合法的),你的任务是按如下格式输出:

  • 每个标签(无论是开标签还是闭标签)单独占一行。
  • 在每个标签前输出 2×h2 \times h 个空格,其中 hh 是该标签的嵌套层数。

输入格式

输入数据为唯一一行非空字符串——XML-文本,长度不超过 1000 个字符。保证该文本合法,且不包含空格。

输出格式

请按照上述规则输出给定的 XML-文本。

说明/提示

由 ChatGPT 4.1 翻译

样例

<a><b><c></c></b></a>
<a>
  <b>
    <c>
    </c>
  </b>
</a>
<a><b></b><d><c></c></d></a>
<a>
  <b>
  </b>
  <d>
    <c>
    </c>
  </d>
</a>

在线编程 IDE

建议全屏模式获得最佳体验