给定两个字符串s和t,请判断s是否是t的子序列。即从t中删除一些字符,将剩余的字符连接起来,即可获得s。
Input
包括若干个测试数据。每个测试数据由两个ASCII码的数字和字母串s和t组成,s和t的长度不超过100000。
Output
对每个测试数据,如果s是t的子序列则输出“Yes”,否则输出“No”。
Sample
Inputcopy | Outputcopy |
---|---|
sequence subsequence person compression VERDI vivaVittorioEmanueleReDiItalia caseDoesMatter CaseDoesMatter |
Yes No Yes No |
//
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s,t;
int i,pos;
while( cin>>s>>t )
{
pos=0;
for( i=0;i<t.size();i++ )
{
if( pos==s.size() ) break;
if( s[pos]==t[i] ) pos++;
}
if( pos==s.size() ) cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
return 0;
}