从指定位置删除指定长度的字符串(串)

从指定位置删除指定长度的字符串(串)

时间: 1ms        内存:128M

描述:

从一个字符串中的第p个位置起删除指定长度的字符串,输出最终结果,若输入不合法,则输出 Illegal input

输入:

输入一个字符串s、位置p、长度n

输出:

删除子串后的字符串

示例输入:

adfasdf12
6 5

示例输出:

Illegal input

提示:

参考答案(内存最优[752]):

#include<stdio.h>
#include<string.h>
int main()
{
	char Array[10000]={0};
	int m,n,i,t;
	gets(Array);
	scanf("%d%d",&m,&n);
	t=strlen(Array);
	if(m+n>t+1)
		printf("Illegal input");
	else
		for(i=0;i<t;)
		{
			if(i==m-1)
				while(n--)
					i++;
			else
			{
				printf("%c",Array[i]);
				i++;
			}
		}
	printf("\n");
	return 0;
}

参考答案(时间最优[0]):

#include<stdio.h>
#include<string.h>
int main()
{
	char Array[10000]={0};
	int m,n,i,t;
	gets(Array);
	scanf("%d%d",&m,&n);
	t=strlen(Array);
	if(m+n>t+1)
		printf("Illegal input");
	else
		for(i=0;i<t;)
		{
			if(i==m-1)
				while(n--)
					i++;
			else
			{
				printf("%c",Array[i]);
				i++;
			}
		}
	printf("\n");
	return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注