ABC128

はてなダイアリー、自動移行に任せたせいなのかドメインがあんまりかっこよくない感じになっていた。変えようかなと思ったけど、もう今の記事へのリンクを張っている人たちがいるみたいなのでこのままにしよう。

 

 

Problems

  • A: コンパイルせずに提出した
  • B: ちゃんと手元でテストした
  • C: あたまこんがらがる...一発で通ってよかった
  • D: さくっと通った(のわりに C より時間かかってるな
  • E: 工事 i がブロックする出発時刻の範囲を考えてイベント走査。同時刻のイベント処理の順番を間違えてしばらくハマった。イベント走査、書くのもややこしいしデバッグしんどいし苦手だ......
  • F: 前進・後退を x 回ずつやって最後に前進してゴール、という形でなければならないという制約からあれこれするのかなって思ったけどわからず

Result

  • ABCDE 192nd 1565 (+109), perf: 2072
  • Perf は過去最高
  • 数年前に ARC で 190th だったときよりも perf 高いのか......

感想戦

  • 初めて実践でラムダ式と range-based for を使った(C++03 世代並感)
  • B で tuple を使う手があったのか! pair<pair<string,int>,int> しちゃった
  • F の解説を聞いてみた。x(A-B) + A = N - 1 に着目するのはよくて、そこから A-B を固定して考えるのか・・・! x を動かすと経路ががっつり変わるので x を固定したくなっちゃったけど、通過する点だけに着目すると先頭と末尾から同時に伸びていく2つの公差 A-B の等差数列に分解できて、x を 1 増やしたときも数列が 1 個ずつ伸びただけと捉えることができる。なるほどな