40 pts求助
查看原帖
40 pts求助
838926
very_easy楼主2024/1/15 13:43
#include<bits/stdc++.h>
using namespace std;
int main(){
	string a;
	cin>>a;
	int len=a.size();
	int n,f=0,x=1;
	cin>>n;
	while(n--){
		string op;
		cin>>op;
		if(op=="rev") f++,x=len-x+1;
		if(op==">"){
			int s;
			cin>>s;
			x+=s;
			x%=len;
		}
		if(op=="<"){
			int s;
			cin>>s;
			s%=len;
			x-=s;
			if(x<=0) x+=len; 
		}
	}
	string p1=a.substr(x,len-x+1);
	string p2=a.substr(0,x);
	if(f%2==0){
		a=p1+p2;
		cout<<a;
	}
	else{
		reverse(p1.begin(),p1.end());
		reverse(p2.begin(),p2.end());
		a=p2+p1;
		cout<<a;
	}
	return 0;
}

2024/1/15 13:43
加载中...