以下の内容はhttps://blog.hamayanhamayan.com/entry/2021/02/20/233517より取得しました。


uNrEaDaBlE sTrInG [SOMPO HD プログラミングコンテスト2021(AtCoder Beginner Contest 192) B]

https://atcoder.jp/contests/abc192/tasks/abc192_b

解説

https://atcoder.jp/contests/abc192/submissions/20343662

各文字毎に奇数番目、偶数番目で判定していく。
C++であれば、判定はasciiコードを使用した判定方法を使うのがフルスクラッチでやるには簡単。
大文字であれば文字コードがA~Zの間に、小文字であればa~zの間に収まることを利用して小文字大文字を判定する。
自分の実装では満たすなら何もしないし、満たさないならnoと返すようにしている。

string S;
//---------------------------------------------------------------------------------------------------
#define yes "Yes"
#define no "No"
string solve() {
    int N = S.length();
    rep(i, 0, N) {
        if (i % 2 == 0 && 'a' <= S[i] && S[i] <= 'z') {}
        else if (i % 2 == 1 && 'A' <= S[i] && S[i] <= 'Z') {}
        else return no;
    }
    return yes;
}
//---------------------------------------------------------------------------------------------------
void _main() {
    cin >> S;
    cout << solve() << endl;
}



以上の内容はhttps://blog.hamayanhamayan.com/entry/2021/02/20/233517より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14