题意:给出两个字符串s,t,问能否从t中删除0个或多个字符(其他字符顺序不变)得到s
直接枚举--可是都是开的100000这么大,100000*100000为何没有超时= =
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; char s[100005],t[100005]; int main() { int i,j,ans,x,len1,len2; while(scanf("%s %s",&s,&t)!=EOF) { len1=strlen(s); len2=strlen(t); x=0;ans=0; for(i=0;i<len1;i++) { for(j=x;j<len2;j++) { if(s[i]==t[j]){ x=j+1; ans++; break; } } } if(ans==len1) printf("Yes "); else printf("No "); } return 0; }