#include <stdio.h>
#include <string.h>
int main(void){
int a, b, q, n;
char str[10086];
scanf("%d%s", &q, str);
for(int i = 1;i <= q;i++){
char in[10086];
scanf("%d", &n);
switch(n){
case 1:
scanf("%s", in);
strcat(str,in);
printf("%s\n", str);
break;
case 2:
scanf("%d %d", &a, &b);
str[a + b]='\0';
strcpy(in,&str[a]);
strcpy(str,in);
printf("%s\n", str);
break;
case 3:
scanf("%d %d %s", &a, &b, in);
strcat(in,&str[a]);
strncat(str,in,a+b);
printf("%s",str);
break;
case 4:
char* j;
scanf("%s",in);
j = strstr(str,in);
printf("%d\n",j==NULL?-1:(int)(j-str));
break;
}
}
return 0;
}
代码如上。