z1928140894 @ 2024-11-28 14:51:28
#include <stdio.h>
#include <string.h>
char s[10000];
char a[105];
int main()
{
int q;
scanf("%d",&q);
getchar();
gets(s);
for(int i=0;i<q;i++)
{
gets(a);
if(a[0]=='1'){
int n=strlen(a);
for(int j=0;j<n-2;j++){
a[j]=a[j+2];
}
a[n-2]='\0';
a[n-1]='\0';
strcat(s,a);
printf("%s\n",s);
}
else if(a[0]=='2') {
int z=a[2]-'0';
int h=a[4]-'0';
int n=strlen(s);
for(int j=0;j<n;j++){
s[j]=s[j+z];
}
for(int j=z+h;j<n;j++){
s[j]='\0';
}
printf("%s\n",s);
}
else if(a[0]=='3'){
int m=a[2]-'0';
int n=strlen(s);
char z[10000];
char h[10000];
for(int j=0;j<m;j++)z[j]=s[j];
for(int j=m;j<n;j++)h[j-m]=s[j];
int t=strlen(a);
for(int j=0;j<t-4;j++){
a[j]=a[j+4];
}
a[t-4]='\0';
a[t-3]='\0';
a[t-2]='\0';
a[t-1]='\0';
strcat(z,a);
strcat(z,h);
n=strlen(z);
for(int i=0;i<n;i++)s[i]=z[i];
printf("%s\n",s);
}
else if(a[0]=='4'){
int n=strlen(a);
for(int j=0;j<n-2;j++){
a[j]=a[j+2];
}
a[n-2]='\0';
a[n-1]='\0';
if(strstr(s,a)!=NULL)printf("%d\n",strstr(s,a)-s);
else printf("-1\n");
}
}
}
样例都是对的,我下的测试点感觉也没啥问题啊,到底哪错了,求解qwq