はまやんはまやんはまやん

hamayanhamayan's blog

Shiritori [AtCoder Beginner Contest 109 B]

https://beta.atcoder.jp/contests/abc109/tasks/abc109_b

解法

https://beta.atcoder.jp/contests/abc109/submissions/3160171

実装する。
同じ単語が出たかどうかはsetを使って管理すると良い。
stringの場合はbackメソッドで最後の文字が取得できるので活用しよう。

int N; string S[101];
//---------------------------------------------------------------------------------------------------
#define yes "Yes"
#define no "No"
string solve() {
    set<string> s;
    s.insert(S[0]);
 
    rep(i, 1, N) {
        if (S[i - 1].back() != S[i][0]) return no;
        if (s.count(S[i])) return no;
 
        s.insert(S[i]);
    }
 
    return yes;
}
//---------------------------------------------------------------------------------------------------
void _main() {
    cin >> N;
    rep(i, 0, N) cin >> S[i];
    cout << solve() << endl;
}