洛谷-UVA11988 损坏的键盘
题目描述
输入格式
输出格式
题意翻译
你在输入文章的时候,键盘上的Home键和End键出了问题,会不定时的按下。你却不知道此问题,而是专心致志地打稿子,甚至显示器都没开。当你打开显示器之后,展现你面前的数一段悲剧文本。你的任务是在显示器打开前计算出这段悲剧的文本。 给你一段按键的文本,其中’[‘表示Home键,’]‘表示End键,输入结束标志是文件结束符(EOF)。
输入输出样例
输入输出样例
输入 #1复制
This_is_a_[Beiju]_text
[[]][][]Happy_Birthday_to_Tsinghua_University
输出 #1复制
BeijuThis_is_a__text
Happy_Birthday_to_Tsinghua_University
题意:遇见” [ “指正移向首元素,遇见” ] “指针移项尾元素,因此使用迭代器方便。
代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
string s;
while(cin>>s){
vector<char> block;
vector<char>::iterator it=block.begin();
for(int i=0;i<s.size();i++){
if(s[i]=='['){
it=block.begin();
}else if(s[i]==']'){
it=block.end();
}else{
it=block.insert(it,s[i]);
it++;
}
}
for(int i=0;i<block.size();i++){
cout<<block[i];
}
/*for(it=block.begin();it<block.end();it++){
cout<<*it;
} */
cout<<endl;
}
return 0;
}
还没有评论,来说两句吧...