题目
问题 B: 键盘坏了 (Ver. I)
时间限制: 1 Sec 内存限制: 128 MB
提交: 393 解决: 106
[提交][状态][讨论版]
题目描述
键盘坏了QAQ,会时不时的自动按下Home键和END键,你能告诉我敲击后的文本长什么样子嘛 T^T
输入
测试数据有多组,每组包括一行字符串(长度 <= 105),其中'['代表敲击了Home键,']'代表敲击了END键
输出
对于每组数据输出敲击后的文本
样例输入
This_is_a_[Beiju]_text
[[]][][]Happy_Birthday_to_Tsinghua_University
样例输出
BeijuThis_is_a__text
Happy_Birthday_to_Tsinghua_University
代码块
#include <iostream>
#include <string.h>
using namespace std;
int main(void)
{
char s[1000000];//这里s串定义为char *类型是为了方便对串进行指针操作
while(cin>>s)
{
int len = strlen(s);
string s1;//定义为string类型方便串的合并操作
string s2;
for(int i=len-1; i>=0; i--)
{
if(s[i]=='[')
{
s1 = s1 + (s+i+1);
s[i] = '\0';
}
else if(s[i]==']')
{
s2 = (s+i+1) + s2;
s[i] = '\0';
}
else if(i==0)
{
s1 = s1 + s;
}
}
cout<<s1<<s2<<endl;
}
}