けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

AtCoder ABC 167 A - Registration (灰色, 100 点)

一見 for 文が必要だが、なしでも解ける

問題概要

2 つの文字列  S, T が与えられる。 T S より 1 文字多い。

 T S の末尾に 1 文字追加することで出来上がるものであるかどうかを判定せよ。

解法

 T の末尾の文字を削除しよう。C++ なら、

T.pop_back();

と書ける。そして、改めて S == T であるかどうかを判定すればよい。

#include <bits/stdc++.h>
using namespace std;

int main() {
    string S, T;
    cin >> S >> T;
    
    T.pop_back();
    if (S == T)
        cout << "Yes" << endl;
    else
        cout << "No" << endl;
}