Description
这次我们要写一个简单的行编辑器,当按下‘#’时代表按下了一次退格符,当按下‘@’时代表一个退行符(使当前行的字符全部无效)。例如,假设从终端接收了这样的两行字符: Whil#lr#e(s#*s) outcha@putchar(*s=#++) 则实际有效的是下列两行: While(*s) putchar(*s++) 请你编写一个程序,输出实际有效的字符串。 |
Input |
第一行是一个整数T,表示测试数据组数。 接下来每行为一个字符串(不含空格和任何空白),表示输入的原始字符串
|
Output |
输出最终的正确字符串。 |
Sample Input |
2 Whil#lr#e(s#*s) outcha@putchar(*s=#++)
|
Sample Output |
While(*s) putchar(*s++) |
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<cstdlib>
using namespace std;
int main()
{
int T;
cin>>T;
while(T--)
{
string s;
cin>>s;
int begin=-1;
for(int i=0;i<s.size();i++)
{
if(s[i]=='@') begin=i;
}
for(int j=begin+1;j<s.size();j++)
{
if(s[j+1]!='#')
{
if(s[j]=='#') continue;
cout<<s[j];
}
}
cout<<endl;
}
return 0;
}