1140:验证子串
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 39133 通过数: 18440
【题目描述】
输入两个字符串,验证其中一个串是否为另一个串的子串。
【输入】
输入两个字符串, 每个字符串占一行,长度不超过200且不含空格。
【输出】
若第一个串s1是第二个串s2的子串,则输出(s1) is substring of (s2)
否则,若第二个串s2是第一个串s1的子串,输出(s2) is substring of (s1)
否则,输出 No substring。
【输入样例】
abc
dddncabca
【输出样例】
abc is substring of dddncabca
#include<iostream>
#include<cmath>
char a[325],b[325],tmp[325];
#include<cstring>
using namespace std;
int main()
{
int i,t,k,n=0,m=0,j,ddd=0;
char c;
scanf("%s",a);
scanf("%s",b);
i=strlen(a);
j=strlen(b);
if(i<j){//我把长的放在a中
strcpy(tmp,b);
strcpy(b,a);
strcpy(a,tmp);
t=i;
i=j;
j=t;
}
{
for(m=0;m<i;m++)//从第一个字符,开始和短的第一个字符比较
{
if(a[m]==b[0])//如果相等
{
for(n=0,k=m;n<j;n++,k++)比较下面的是不是相等
if(a[k]!=b[n])break;
if(n==j){//如果是子串
printf("%s is substring of %s",b,a);
ddd=1; }//标志位置1
}
}
}
if(ddd==0)printf("No substring");
return 0;
}
最后
以上就是洁净枫叶最近收集整理的关于信息学奥赛一本通:1140:验证子串的全部内容,更多相关信息学奥赛一本通内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复