ZeroJudge E624: All in All

題目敘述

本題採EOF方式收資料,每筆資料有兩個字串a和b,要求輸出是否可以透過刪減b中的字元來讓a等於b。


範例輸入 #1

sequence subsequence

person compression

VERDI vivaVittorioEmanueleReDiItalia

caseDoesMatter CaseDoesMatter

範例輸出 #1

Yes

No

Yes

No


解題思路

跑第二個字串的For迴圈然後設定一個Count的變數 (預設為0),當第二個字串的第i個字元等於第一個字串的第Count個字元時,Count++。最後判斷Count是否等於第一個字串的長度即可。

解題程式碼如下 (僅供參考):

#include <iostream>
using namespace std;

int main() {
    string a, b;
    while (cin >> a >> b)
    {
        int count = 0;
        for (int i = 0; i<b.length(); i++)
        {
            if (b[i] == a[count]) count++;
            if (count == a.length()) break;
        }
        if (count == a.length()) cout << "Yes\n";
        else cout << "No\n";
    }
}

留言

這個網誌中的熱門文章

ZeroJudge M933: 邏輯電路

ZeroJudge A148: You Cannot Pass?!

ZeroJudge A263: 日期差幾天