ARC080 C: 4-adjacent

arc080.contest.atcoder.jp

解き方

  • すべての数字を4で割った余りに変えても同じ
  • 2は全部連続させて良い(分けることでうまく行くパターンが増えることはない)
  • 2の連続、1のとなりには0が来ないといけない(2...2, 0, 1, 0, 1, ...., 1, 0, 1など)ので、それぞれの個数を調べて判別
    • 2, 2, ....., 2の場合は例外として、0がなくてもYesなので注意が必要

ハマったことろ

  • 一番一般的な場合の判定式をミスって実装した
    • 例題の内容くらいは手を動かして確認したほうが良い?
  • 場合分け忘れと実装ミス多数
    • サンプルにないコーナーケースを見つけたら横着せずにサンプル追加したほうが良さそう

github.com