自测没问题,提交只有40
双手奉上:
#include<bits/stdc++.h>
using namespace std;
int n,na,nb;
char a[206],b[206];
void hc()
{
int i;
cin>>b;
na=strlen(a);
nb=strlen(b);
for(i=na;i<na+nb;i++) a[i]=b[i-na];
na+=nb;
for(i=0;i<na;i++) cout<<a[i];
cout<<endl;
}
void bl()
{
int i,x,y;
cin>>x>>y;
for(i=x;i<x+y;i++) a[i-x]=a[i];
na=y;
for(i=0;i<na;i++) cout<<a[i];
cout<<endl;
}
void zj()
{
int i,x;
cin>>x>>b;
nb=strlen(b);
for(i=x;i<na;i++) a[i+nb]=a[i];
for(i=x;i<x+nb;i++) a[i]=b[i-x];
for(i=0;i<na+nb;i++) cout<<a[i];
cout<<endl;
}
void cz()
{
int i,j,zt;
cin>>b;
nb=strlen(b);
for(i=0;i<=na;i++){
zt=1;
if(a[i]==b[0]){
for(j=1;j<nb;j++)
if(a[i+j]!=b[j]){
zt=0;
break;
}
if(zt==1){
cout<<i<<endl;
return;
}
}
}
cout<<-1<<endl;
return;
}
int main()
{
int i,t;
cin>>n>>a;
for(i=0;i<n;i++){
cin>>t;
switch(t){
case 1:hc();break;
case 2:bl();break;
case 3:zj();break;
case 4:cz();break;
}
}
return 0;
}