P10058tle,求助。我的代码时间复杂度是O(n),应该不会超时呀
#include<bits/stdc++.h>
#define ll long long
using namespace std;
string s,command;
ll n;
ll res;
bool flag=true;
signed main() {
cin>>s;
cin>>n;
string sp=s+s+s,sr=s;
s=sp;
ll l=sr.size(),r=l+sr.size()-1;
while(n--) {
cin>>command;
if(command=="rev") {
flag=!flag;
continue;
}
cin>>res;
if(flag==false) {
if(command==">")command="<";
else command=">";
}
ll mv=(command==">"?-1:1);
res%=sr.size();
if(mv==-1) {
if(l+res*mv<0)s=sr+s,l+=sr.size(),r+=sr.size();
}
if(mv==1) {
if(r+res*mv>s.size())s=s+sr;
}
l+=mv*res,r+=mv*res;
}
if(flag) {
for(ll i=l; i<=r; i++) {
cout<<s[i];
}
} else {
for(ll i=r; i>=l; i--) {
cout<<s[i];
}
}
return 0;
}