C1024 - 破损的键盘
题目描述
你正在用一个坏了的键盘打一长串文字。它其实没坏得那么厉害,键盘的唯一问题是有时候"Home"键或者"End"键会自动被按下。
你并不知道键盘存在这一问题,而是专注于输入文本,你甚至连显示器都没有打开。
在你打完字后,你打开显示器看到屏幕上的文本是一段悲剧的文本(错乱的文字)。
用中文来说,称之为悲剧文本。
现在你的任务是通过写程序来还原出原始真实的输入文本内容。
输入格式
1行,一段字符串,由大小写字母、下划线、字符[和字符]组成的一段悲剧的文本,不包含空格
输出格式
输出1行,代表输入字符串对应的原始真实输入字符串内容
输入输出样例 #1
输入 #1
This_is_a_[Beiju]_text
输出 #1
BeijuThis_is_a__text
输入输出样例 #2
输入 #2
[[]][][]Happy_Birthday_to_Tsinghua_University
输出 #2
Happy_Birthday_to_Tsinghua_University
输入输出样例 #3
输入 #3
[T[h[i[s]a
输出 #3
sihTa
输入输出样例说明
遇到[则相当于遇到了"Home"键,键盘的光标需要跳转到这段文本的开头
遇到]则相当于遇到了"End"键,键盘的光标需要跳转到这段文本的结尾
以输入样例:This_is_a_[Beiju]_text 为例说明:
上面的输入样例的处理过程是:
- 光标在开头等待输出内容,首先输出的是:This_is_a_
- 然后遇到了
[,光标跳转到文本的开头继续输出后续内容(Beiju):BeijuThis_is_a_ - 然后遇到了
],光标跳转到文本的结尾处继续输出后续内容(_text):BeijuThis_is_a__text
所以最终输出原始真实的文本是:BeijuThis_is_a__text
数据范围与提示
50%的数据:1 ≤ 输入字符串的长度 ≤ 1000
100%的数据:1 ≤ 输入字符串的长度 ≤ 1000000
测试点数目
共10个测试点,每个测试点10分
时间与内存限制
每个测试点时间:1000ms(1.0s),内存:256MiB
输入输出模式
本OJ支持两种输入输出模式
1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:C1024.in,输出文件名为:C1024.out