2011-10-18
SRM 518 Div2
Easy (250) TwiceString
- 同じ文字列が2回出てくる最短のものを求める。
- 普通に全試行。
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_518/TwiceString.cpp
Medium (500) LargestSubsequence
- 部分文字列のうち辞書順最大のものを求める。
- 前から見て全試行したが、後ろから見るとO(n)だったらしい。
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_518/LargestSubsequence.cpp
Hard (1000)
- N枚のコインがあり全て表になっている。
- Kターン後に表になっている枚数の期待値を求める。
- 最初から1ターンずつ計算したらサンプルと合ったので提出
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_518/CoinReversing.cpp
結果
ooo 241.27+305.88+493.62=1040.77 rating 1100 -> 1154
Easyは全く悩む所がなかったが、テストケースを手で書いていたため5分かかった。
Mediumをきれいに書き直してたら20分くらいかかってしまったが、変なバグを埋め込むよりはよかった。
初めてHard通った。しかし簡単な回かつ遅かったためrate上昇はそこそこ。
- 49 https://topcoder-g-hatena-ne-jp.jag-icpc.org/
- 2 https://topcoder-g-hatena-ne-jp.jag-icpc.org/diarylist
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=遊園地 google code jam japan large&source=web&cd=4&ved=0CDEQFjAD&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20111008/1318087633&ei=tkyhTsCnNObxmAWuwfGgCQ&usg=AFQjCNE62H7elS3v3Yjim6IvG1WSdBmGdA&sig2=5uX5xdOU11AAF-A6zEJGGA