第二个WA,答案对,不知道为什么
查看原帖
第二个WA,答案对,不知道为什么
1494335
ws778楼主2024/12/28 23:03
#include<stdio.h>
#include<string.h>
int main()
{
	char ch[2000];
	int n;
	scanf("%d",&n);
	scanf("%s",ch);
	int h,len,len1;
	char ch1[2000],ch2[2000];
	int a,b;
	for(int i=0;i<n;i++)
	{
		int m=0;
		scanf("%d",&h);
		switch(h)
		{
			case 1:
				scanf(" %s",ch1);
				strcat(ch,ch1);
				printf("%s\n",ch);
				break;
			case 2:
				scanf("%d%d",&a,&b);
				for(int i=a;i<a+b;i++)
				{
					ch2[m]=ch[i];
					m++;
				}
				strcpy(ch,ch2);
				printf("%s\n",ch);
				break;
			case 3:
				scanf("%d %s",&a,ch1);
				 len=strlen(ch1);
			     len1=strlen(ch);
				for(int i=len1-1;i>=a;i--)
				{
					ch[i+len]=ch[i];
				 } 
				for(int i=0;i<len;i++)
				{
					ch[i+a]=ch1[i];
				}
				printf("%s\n",ch);
				break;
			case 4:
				scanf(" %s",ch1);
				char*p=ch;
				char *s=strstr(ch,ch1);
				
				if(s-p>=0)
				{
					printf("%d\n",s-p);
				}
				else
				printf("-1\n");
				break;
		}
	
	}
 } 
2024/12/28 23:03
加载中...