Monday, January 18, 2010

All in All

You have devised a new encryption technique which
encodes a message by inserting between its characters randomly generated
strings in a clever way. Because of pending patent issues we will not discuss
in detail how the strings are generated and inserted into the original message.
To validate your method, however, it is necessary to write a program that
checks if the message is really encoded in the final string.



Given two strings s and t, you have
to decide whether s is a subsequence of t, i.e. if you can remove
characters from t such that the concatenation of the remaining
characters is s.



Input Specification



The input contains several test cases. Each is
specified by two strings s, t of alphanumeric ASCII characters separated
by whitespace. Input is terminated by EOF.



Output Specification



For each test case output, if s is a
subsequence of t.



Sample Input



sequence subsequence
person compression
VERDI vivaVittorioEmanueleReDiItalia
caseDoesMatter CaseDoesMatter


Sample
Output



Yes
No
Yes
No








































































//  All in All.cpp : Defines the entry point for the console application.


//


 


#include "stdafx.h"


 


 


int _tmain(int argc, _TCHAR* argv[])


{
                char
A[100],B[100];
                int pos,tru,found=0,i,j;
                while(scanf("%s",A))
                {
                                pos=0;tru=0;
                                scanf("%s",B);
                                for(i=0;A[i]!='';i++)
                                {
                                                tru=0;
                       
                        for(j=pos;B[j]!='';j++)
                       
                        {
                        
                                       if(A[i]==B[j])
                                                                {
                                                                                tru=1;
                                                                                pos=j;
                                                                                break;
                                                                }
                      
                         }                                                                                   
                       
                        if(tru==0)
                       
                        {
                                                                found=0;
                                                                break;
                       
                        }
                       
                        else
                       
                        {found=1;}
                                }
                                if(found==1)
                                {printf("Yes\n");}
                                else
                                {printf("No\n");}
                }
                return 0;
}

sequence subsequence
Yes
person compression
No
VERDI vivaVittorioEmanueleReDiItalia
Yes
caseDoesMatter CaseDoesMatter
No

No comments:

Post a Comment