UVA 10340 All in All

Problem

https://uva.onlinejudge.org/external/103/10340.pdf

Thinking

其實只是在t字串裡有沒有s字串裡的所有字母, 且順序關係要和s一樣
比如說:
1. t = abcde s = abe 是合法的
2. t = abcde s = dc 就不合法 雖然t字串裡有s的所有字母,但是順序關係不同

Solution

#include<iostream>
#include<string>
using namespace std;

void solve(string s,string t)
{
    int sPointer,tPointer;
    sPointer = tPointer = 0;

    while(sPointer < s.length() && tPointer < t.length())
    {
        if(s[sPointer] == t[tPointer]){
            sPointer++;
            tPointer++;
        }else{
            tPointer++;
        }
    }

    if(sPointer != s.length())
        cout << "No" << endl;
    else
        cout << "Yes" << endl;

}


int main()
{
    string s,t;
    while(cin >> s >> t){
        solve(s,t);
    }
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章