Toy と帽子と ADP BE

主にプログラミングに関わる話をゆるくエモくやっていきます

AtCoder Beginner Contest 296

ABCEの4完3WA。

各問題

A - Alternately

前と違うかどうかを順番にチェックしていけばいいです。

B - Chessboard

一つずつチェックしていくだけです。座標の表示の仕方はいろいろありますが、自分はこんな感じで。

for (int i = 0; i < 8; i++) {
    for (int j = 0; j < 8; j++) {
        if (コマがある) {
            cout << (char)(j + 'a') << (8 - i) << endl;
        }
    }
}

C - Gap Existence

A[i] に対して A[i] + X または a[i] - X となるような A[j] があればよいので、それをチェックします。setに入れるのが楽です。

なんと、それにすぐに気づけず2WAと40分ほど時間を溶かしてしまうはめに。

D - M<=ab

なにもわからない...。

E - Transition Game

CでめちゃくちゃはまってDが解けないので、これが解けないと大惨事になるため(灰パフォだった)、必死に考えました。

数字を追っていくと、最終的にはループする部分とそのループに外から入り込む部分に分かれます。(自己ループも含め)ループの構成要素の場合、どんなKに対しても高橋君は対応可能です。ループの外の場合十分大きなKを指定されると戻ってこれないため対応できません。

よってそれをいい感じにチェックすればよいです。

ループのみで構成されている場合に実装をミスっていたらしく1WA。

まとめ

CでしこたまはまってDが通せない時点で灰パフォが見えて生きた心地がしませんでしたが、Eを通してなんとか水パフォげっと。こわ。