AtCoder Beginner Contest 404 振り返り

概要 2025年5月3日(土)21時から開催されたAtCoderコンテストに参加しました。 結果は A・B問題の2完。ギリギリではありますが、茶色を維持しています。 AtCoderには nullpointerlog という名前で参加しています。 この記事では各問題の所感と反省点を振り返っておきます。 A・B問題:なんとか2完 A問題 少し時間がかかりましたが、英小文字に対応するサイズ26のテーブルを作り、入力文字を消しこんでいく方針で解きました。 解説にあるような2重ループの方が、よりシンプルに書けたかもしれません。 B問題:マトリックスの回転 2次元配列を90度ずつ最大4回まで回転させ、それぞれの状態とTを比較して違いの数を求め、最小の操作回数を選ぶ問題。 ロジックはすぐに思いつきましたが、90度・270度回転時のインデックス変換のコーディングと確認に少し時間がかかりました。 こういった典型実装こそ、丁寧さが問われると実感しました。 C問題:グラフ問題の落とし穴 問題文の要点は: 各頂点が ちょうど2本の辺 を持ち それらが 1つのループ(一筆書き)として閉じているか 私は 「各点の次数が2なら、全体がループになっているはず」 と早合点して判定した結果、WA(Wrong Answer)が4回。 結果的には、 各点が2本ずつの辺を持っていても、**複数の閉路(ループ)**ができてしまえば「一筆書きで一周」にはならない。 ということに、最後まで気が付きませんでした。 作問者の罠に見事に引っかかりました。 ✅ 正解パターン(1つのループ) graph LR A1((1)) --- A2((2)) A2 --- A3((3)) A3 --- A4((4)) A4 --- A5((5)) A5 --- A6((6)) A6 --- A1 ❌ 失敗パターン(2つの独立したループ) graph LR A1((1)) --- A2((2)) A2 --- A3((3)) A3 --- A1 graph LR A4((4)) --- A5((5)) A5 --- A6((6)) A6 --- A4 D問題:整理はできたが実装に至らず C問題でWAが続き、手が止まったためD問題にも目を通しました。 ...

5月 5, 2025 · 1 分