40分求助
查看原帖
40分求助
930327
chenzher楼主2023/6/7 21:59
#include<cstdio>
#include<cstring>
using namespace std;
int n,m;
char a[10001];
char s[10001];
int main()
{
	scanf("%d%s",&n,&a);
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&m);
		if(m==1)
		{
			int l=strlen(a);
			scanf("%s",&s);
			for(int j=0;j<strlen(s);j++)
			{
				a[j+l]=s[j];
			}
			printf("%s\n",a);
		}
		else if(m==2)
		{
			int x,y,l=strlen(a);
			scanf("%d%d",&x,&y);
			for(int j=x;j<x+y;j++)
			{
				a[j-x]=a[j];
			}
			for(int j=y;j<l;j++)
			{
				a[j]='\0';
			}
			printf("%s\n",a);
		}
		else if(m==3)
		{
			int x,l=strlen(a);
			scanf("%d%s",&x,&s);
			for(int j=strlen(s)+(l-x)+1;j<l+strlen(s);j++)
			{
				a[j]=a[j-strlen(s)];
			}
			for(int j=x;j<x+strlen(s);j++)
			{
				a[j]=s[j-x];
			}
			printf("%s\n",a);
		}
		else if(m==4)
		{
			int h=-1;
			scanf("%s",&s);
			for(int j=0;j<strlen(a);j++)
			{
				if(a[j]==s[0])
				{
					int z=0;
					for(int k=0;k<strlen(s);k++)
					{
						if(a[j+k]!=s[k])
						{
							z=1;
							break;
						}
					}
					if(z==1)
					{
						break;
					}
					else if(h==-1)
					{
						h=j;
						break;
					}
				}
			}
			printf("%d\n",h);
		}
	}
	return 0;
}
2023/6/7 21:59
加载中...