一見 for
文が必要だが、なしでも解ける
問題概要
2 つの文字列 が与えられる。 は より 1 文字多い。
が の末尾に 1 文字追加することで出来上がるものであるかどうかを判定せよ。
解法
の末尾の文字を削除しよう。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; }