Hatena::Grouptopcoder

TopCoder2D

 | 

2011-10-13

TopCoder SRM 522 Div1 参加記

| 00:42

調子悪いです~.

結果

Rating

  • 1323 -> 1270

Score

  • Easy : 124.29 pt
  • Med : Opened
  • Hard : Unopened
  • Challenge : +0/-0

Easy

  • 最初考えようとしてた方針
    • 相手のアルファベットを全て消せるような置き方があれば勝てる
    • つまり, 初期の文字列の左端か右端にAがあれば, Aの勝ちということになる
    • でも, 一番最初にAが勝てなかった場合の勝者がだれになるか, 考えられなかった
    • 他の人のコードを見たら,「最初にAが勝てなかったら, Bが勝つ」という解法で解けるらしいです
  • 本番書いたコード
    • nをマスの数とすると
    • それぞれのマスにコインが置かれているかどうかは, 2^nのビットで管理できる
    • さらに, コインの置き方は, 最大でも約n^2種類
    • よって, O(2 * n^2 * 2^n) のDPで解ける
    • デバッグに非常に時間がかかりました

Med

  • Aの値だけ変更, Bの値だけ変更, Cの値だけ変更, AとBの値だけ変更, AとC,.. の全てのパターンについて, どうなるか考えてみた
  • わからなかった!!

My Comment

反省点

  • ひとつひとつの処理をどのような意図で書いているかを考えながらコーディングする
  • 「まとめて全てコーディングしてから, デバッグ」ということをしているけど, デバッグ能力低いから, バグを探すのに時間かかるし, これはやめておくことにしよう
 |