#include<bits/stdc++.h>
#define int long long
using namespace std;
string s,op;
int n,x,sum;
signed main(){
cin>>s>>n;
int f=1;
int len=s.size();
while(n--)
{
cin>>op;
if(op=="<"){
cin>>x;
if(f==1) sum-=x;
else sum+=x;
}
if(op==">"){
cin>>x;
if(f==1) sum+=x;
else sum-=x;
}
if(op=="rev"){
f=1-f;
}
}
sum%=len;
if(sum<0) sum=abs(sum),rotate(s.begin(),s.begin()+sum,s.end());
else rotate(s.rbegin(),s.rbegin()+sum,s.rend());
if(f==0) reverse(s.begin(),s.end());
cout<<s;
return 0;
}
P10058 Reverse and Rotate
本文详细描述了一个C++程序,通过输入操作符对字符串进行反转、插入或删除元素,最后根据条件调整字符串并输出结果。

被折叠的 条评论
为什么被折叠?



