为什么一片紫?
查看原帖
为什么一片紫?
1043676
hzc__luogu楼主2024/1/16 20:38
#include<bits/stdc++.h>
using namespace std;
string a,b;
int len;
int t;
void js1(int n){
	n=n%len;
	n=len-n;
	int l1=0,l2=n;
	for(int i=1;i<=len;i++){
		if(l2>len-1) l2=0;
		if(l2<0||l1<0) return;
		b[l2++]=a[l1++];
	}
	for(int i=1;i<=len;i++){
		if(i<0) return;
		a[i-1]=b[i-1];
	}
}
void js2(int n){
	n=n%len;
	int l1=0,l2=n;
	for(int i=1;i<=len;i++){
		if(l2>len-1) l2=0;
		if(l2<0||l1<0) return;
		b[l2++]=a[l1++];
	}
	for(int i=1;i<=len;i++){
		if(i<0) return;
		a[i-1]=b[i-1];
	}
}
int main()
{
	cin>>a;
	len=a.length();
	int T;
	scanf("%d",&T);
	char temp;
	string temp1;
	for(int i=1;i<=T;i++){
		cin>>temp1;
		if(temp1=="<"){
			scanf("%d",&t);
			js1(t);
		}
		else if(temp1==">"){
			scanf("%d",&t);
			js2(t);
		}
		else if(temp1=="rev"){
			reverse(a.begin(),a.end());
		}
	}
	for(int i=1;i<=len;i++){
		if(i<0) return 0;
		printf("%c",a[i-1]);
	}
	return 0;
2024/1/16 20:38
加载中...