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;
}

 

posted @ 2015-03-01 17:10  sequenceaa  阅读(112)  评论(0编辑  收藏  举报