码迷,mamicode.com
首页 > 其他好文 > 详细

哈尔滨理工大学2016新生赛I题

时间:2016-11-27 07:14:57      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:span   using   整数   amp   编辑   空格   space   char   log   

这次我们要写一个简单的行编辑器,当按下‘#’时代表按下了一次退格符,当按下‘@’时代表一个退行符(使当前行的字符全部无效)。例如,假设从终端接收了这样的两行字符:

Whil#lr#e(s#*s)

outcha@putchar(*s=#++)

则实际有效的是下列两行:

While(*s)

putchar(*s++)

请你编写一个程序,输出实际有效的字符串。

 

 第一行是一个整数T,表示测试数据组数。

    接下来每行为一个字符串(不含空格和任何空白),表示输入的原始字符串 

 

输出最终的正确字符串。

 

2

Whil#lr#e(s#*s)

outcha@putchar(*s=#++)

 

While(*s)

putchar(*s++) 

 

 1 #include<fstream>
 2 #include<cstdio>
 3 #include<string>
 4 #include <iostream>
 5 using namespace std;
 6 
 7 string s;
 8 char a[5005];
 9 int p;
10 int main()
11 {
12     int T;
13     scanf("%d", &T);
14     while (T--) {
15         int i,len;
16         cin>>s;
17         len=s.size();
18         for(i=0;i<len;++i)
19         {
20             if(s[i]==@)
21                 p=0;
22             else if(s[i]==# && p>0)
23                 --p;
24             else if(s[i]!=#)
25                 a[++p]=s[i];
26         }
27         for(i=1;i<=p;++i)
28             cout<<a[i];
29         cout<<\n;
30     }
31     return 0;
32 }

 

哈尔滨理工大学2016新生赛I题

标签:span   using   整数   amp   编辑   空格   space   char   log   

原文地址:http://www.cnblogs.com/xingkongyihao/p/6105757.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!