Hatena::Grouptopcoder

minus9dの記録

2014-11-01

Code Runner 2014 予選Aに参加

| 23:58 | Code Runner 2014 予選Aに参加 - minus9dの記録 を含むブックマーク はてなブックマーク - Code Runner 2014 予選Aに参加 - minus9dの記録

チームラボとキャリフルが主催するCODE RUNNER 2014 予選Aに参加しました。自分は47位で、なんとか予選突破圏内でした(社会人なので資格がありませんが)。自分が経験する初めてのタイプのコンテストで新鮮だったので、簡単にメモしておきます。

問題

AからDからなる50文字の文字列を作って高得点を目指す

戦略
  • ランダムな長さ50の文字列をたくさん作って投げる
  • 点数の高かった上位n件について、長さ8の部分文字列を抽出して点数を調べる
  • 長さ8の文字列のうち点数の高い上位m件から、ランダムに6つ選び、ランダムな2文字をランダムに挿入して50文字の文字列を生成。たくさん試す
使ったツールなど
  • Pythonを使用
  • itertoolsが便利
  • 文字列と点数の組を辞書として持ち、適宜pickleで保存。cacheとして使った
感想と反省
  • 点数の高い長さ8の文字列を結合するときに、先頭と末尾が一致する文字列を結合できるようにしたかったが間に合わず
  • 点数の高い長さ8の文字列の弾が足りなかった
  • スクリプトHTTP 400の対策を組み込むべきだった

ゲスト



トラックバック - http://topcoder.g.hatena.ne.jp/minus9d/20141101