程序员输入问题

2554: 程序员输入问题
时间限制: 1 Sec 内存限制: 128 MB
提交: 665 解决: 132
[提交][题解][状态][讨论版]
题目描述
程序员输入程序出现差错时,可以采取以下补救措施:
(1) 按错一个键时,可以补按一个退格符“#”,以表示前一个字符无效;
(2) 当前有一行错误时,可以按一个退行符“@”,以表示“@”与前一个换行符之间的字符全部无效。
例如,输入如下一行字符:
fakjf-1fa
fa@helll#oo#world!
则实际有效的是:
helloworld!
输入
一行字符,表示程序员输入字符,个数不超过10000个。
输出
一行字符,表示实际有效的字符。
样例输入
abcef@nop#ip
样例输出
noip
*

#include
using namespace std;
char q[1000000];
int cnt=0;
int main()
{
char a;
while(scanf("%c",&a)!=EOF)
{
if(a==’#’)
{
if(cnt>0)–cnt;
}
else if(a==’@’)
{
cnt=0;
}
else
{
q[++cnt]=a;
}
}
for(int i=1;i<=cnt;+i++)
{
putchar(q[i]);
}
return 0;
} //绝对正解
请点赞

你可能感兴趣的:(编程)