| Time Limit: 1000MS | Memory Limit: 30000K | |
| Total Submissions: 27521 | Accepted: 11266 |
Description
Input
Output
Sample Input
sequence subsequence person compression VERDI vivaVittorioEmanueleReDiItalia caseDoesMatter CaseDoesMatter
Sample Output
Yes No Yes No
Source
代码:一开始想多了,想着要查找的串的第一个字母对应另一个串中的很多位置怎么办。。。其实不用只要匹配了一个字母待匹配的串就少了一个字母,不需要回溯。。所以直接设置两个指针直接模拟就可以了。。
代码:
#include <iostream>
#include <string.h>
using namespace std;
string s1,s2;
int len1,len2;
int main()
{
while(cin>>s1>>s2)
{
int len1=s1.length();
int len2=s2.length();
int i=0,j=0;
while(j<len2)
{
if(s1[i]==s2[j])
{
i++;
j++;
if(i==len1)
{
cout<<"Yes"<<endl;
break;
}
}
else
{
j++;
if(j==len2)
{
cout<<"No"<<endl;
break;
}
}
}
}
return 0;
}
[ACM] POJ 1936 All in All (查找,一个串是否在另一个串中),布布扣,bubuko.com
[ACM] POJ 1936 All in All (查找,一个串是否在另一个串中)
原文地址:http://blog.csdn.net/sr_19930829/article/details/37909557