这道题郁闷了我这么久,这么就这样过了呢?是在费解
感觉以前做的没有什么不妥啊!现在加的条件好像也是可有可无啊!
是在想不通,还是展示一下我的水代码吧!
#include <iostream>
using namespace std;
bool yn(char a[],int n,char b[],int m)
{
int si=0,pi=0;
if (n>m) return false;
while (pi<m&&si<n)
{
if (a[si]==b[pi])
{
si++;
pi++;
}
else pi++;
}
if(si==n)
return true;
else
return false;
}
int main ()
{
int T;
char s1[101],s2[101],r[101];
cin >>T;
for (int i=0;i<T;i++)
{
cin>>s1>>s2;
int k=strlen(s2);
int j,l=0;
for (j=k-1;j>=0;j--,l++)
{
r[l]=s2[j];
}
if(yn(s2,k,s1,strlen(s1))||yn( r,k,s1,strlen(s1)))
cout <<"YES"<<endl;
else
cout<<"NO"<<endl;
}
return 0;
}