题解 | #藏宝图#

藏宝图

http://www.nowcoder.com/practice/74475ee28edb497c8aa4f8c370f08c30

#include<stdio.h>
#include<iostream>
#include<string>
using namespace std;

bool judge(string str1, string str2)
{
    int i=0, j=0;
    //如果两个字符串都为空或者第二个字符串为空
    if((str1.size()==0 && str2.size()==0) || str2.size()==0)    return true;
    if(str1.size() < str2.size())    return false;
    while(j < str2.size() && i < str1.size())
    {
        //从第一个字符串那找 首个和第二个字符串相应字符相等的字符
        while(i<str1.size() && str1[i]!=str2[j])    i++;
        if(i<str1.size() && j<str2.size())
        {
            i++;
            j++;
        }
    }
    return j==str2.size();
}

int main()
{
    string str1, str2;
    cin >> str1;
    cin >> str2;
    if(judge(str1, str2))    cout << "Yes" <<endl;
    else    cout << "No" <<endl;
    return 0;
}
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务