高级模式匹配
描述
给定两个字符串s和t,判断s是否是t的子序列,即从t中删除若干个(包括0个)字符,将剩余的字符连接起来,即可获得s。字符串s和t长度不超过1000。
输入
第一行,字符串t,文本长度\le≤1000。
第二行,字符串s,文本长度\le≤1000。
输出
若s是t的子序列,输出1,否则输出0
输入样例 1
ATBhCde His This
输出样例 1
1
输入样例 2
ATBhCde His That
输出样例 2
0
#include <stdio.h>
#include<string.h>
int main()
{
char s1[1005]={0};
char s2[1005]={0};
gets(s1);
gets(s2);
int sum=0;
int n=strlen(s1);
int m=strlen(s2);
for(int i=0,j=0;i<m&&j<n;)
{
if(s2[i]==s1[j]) {sum++;i++;j++;}
else j++;
}
if(sum==m) printf("1");
else printf("0");
return 0;
}