UVa 10340 All in All

题意:给出两个字符串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\n");

        else printf("No\n");        

    }

    return 0;

}

 

你可能感兴趣的:(uva)