poj 1396All in All

今天开始做字符串咯!这是一道超简单的字符串水题。其实比赛的简单题一般都会有字符串处理。

题意:输入两个字符串,判断后一个是否由前一个插入字符组成的。如果是输出“Yes”,否则输出“No”。

分析:只要从头开始比较两个字符串,如果是s[i]==t[j] ,i++,j++;否则j++。直到到任意一个字符串的末端就结束。如果结束条件是s结束则输出"yes",否则输出“no”。

 

代码:

#include<iostream>
using namespace std;
char s[100001],t[100001];
int judge(char s[],char t[])
{
  int i=0,j=0;
  while(s[i]!='\0'&&t[j]!='\0')
  {
    if(s[i]==t[j]) 
    {
      i++;
      j++;
    }
    else j++;
 }
 if(s[i]=='\0') return 1;
 else return 0;
}
int main()
{
    while(cin>>s>>t)
    {
      if(judge(s,t)) cout<<"Yes"<<endl;
      else cout<<"No"<<endl;
    }
    return 0;
}


 

你可能感兴趣的:(poj 1396All in All)