求s1是否是s2的子串。
分析:
例如sequence 和 subsequence 。
从头开始比较,s1[0]与s2[0]相同,那么它们下标都可+1,接着比较s1[1]和s2[1],不相同;这时应该保证s1[1]不动,而把s2下标+1.直到s1,s2下标移动到最后一位,若s1下标移动到了最后一位,显然判定成功了;如果s2下标到了最后一位,而s1没有,那么没有判定成功。
#include<iostream>
#include<string>
using namespace std;
int main(){
string a,b;
int i,j;
while(cin>>a>>b){
i=;j=;
while(){
if(a[i]==b[j]){
i++;j++;
}
else
j++;
if(i==a.length()){
cout<<"Yes"<<endl;break;
}
if(i<a.length()&&j==b.length()){
cout<<"No"<<endl;break;
}
}
}
return ;
}