2012-09-03
SRM 554
Div1 Easy (250) TheBrickTowerEasyDivOne
問題
- 二種類のブロックを交互に積む。
- 各ブロックの高さと個数が与えられる。
- 何通りの高さが作れるか求める。
方針
- 個数の少ない方の種類をA、多いほうをB、個数をaとbとする
- ABとBAで積んだときは同じ高さ
- ABAとBABは、AとBの高さが異なる場合には異なる
- 使用する個数は最大でa*2+1個
- Passed System Test
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_554/TheBrickTowerEasyDivOne.cpp
Div1 Medium (500) TheBrickTowerMediumDivOne
問題
- 0からN-1までのN本の塔があり、高さはばらばらである。
- 塔と塔の間を、それらの高いほうだけ離して一直線上に並べる。
- 全体の距離が最小で、塔の番号が辞書順最小の並べ方を求める。
方針
- ソートして並べるとだいたい最小解になる
- 単純に並べると、辞書順最小にならない
- 何か違うけど、とりあえずswapしてみるか
- Challenge Succeeded
- (終了後)
- どれを先頭にしても最小解は作れるっぽい
- つまり先頭はindex 0に固定してよい
- 置ける中で最小のものを貪欲に置いていけばよいらしい
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_554/TheBrickTowerMediumDivOne.cpp
結果
ox- +1 198.86+0+50.0=248.86 302nd rating 1344 -> 1421 (+77)
easyは、考え方は合っていたのだが、自分の手書きの例がぐちゃぐちゃで混乱した。twitterでみなさんがアップロードしていた図と比べてだいぶ汚いので反省した。
a*2+b>aと書いたら1になってしまい焦った。やはりいつもくくったほうが安全。
三項演算子のミス a > b ? a+1 : b を撃墜できたのは良かった。
mediumは、ほぼ全員が提出&赤い人だけ通って面白かった。みんな提出するけど間違いがちというのは良い問題だと思う。
コメントを書く
トラックバック - https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120903
リンク元
- 37 https://topcoder-g-hatena-ne-jp.jag-icpc.org/
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=7&ved=0CEUQFjAG&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120210/1328893903&ei=lfZDUKe-De2OmQWZ34CYDQ&usg=AFQjCNH0pdGm2-pkvEppcccc476KZ_8HcA&cad=rja
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=8&ved=0CE4QFjAH&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120903/1346625368&ei=hypEUMf9JoKfmQXEwIG4CQ&usg=AFQjCNH4c7HsvsOtdtC6queBcNKXzcYRGQ
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=8&ved=0CF4QFjAH&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/&ei=Z9VEUIivHsmhiAfizoCICg&usg=AFQjCNF7OCqzkXGK7X8vh6Y-RjeI_uDApQ&sig2=3DUL63YD51qyMWVfSBwnTw
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=25&ved=0CNQBEBYwGA&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120823/1345745155&ei=ZOpEUOWNHejhmAXzzIDADw&usg=AFQjCNEht9O5AicHC1RvaHehvz809yLgbA&sig2=N9X8dcM4bXxnRsJJ0AGx1w
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=6&cad=rja&ved=0CEEQFjAF&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120823/1345745155&ei=r2ZFUNC0Dsr-mAX9koHwCA&usg=AFQjCNEht9O5AicHC1RvaHehvz809yLgbA&sig2=RYSbXJctZlR1Qmrm8CStpg
- 1 http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&ved=0CD0QFjAD&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20110823/1314118074&ei=n7ZFUMTSD4yU0QX3j4CwCQ&usg=AFQjCNHqx13ijOd25tEc7yuNPpWIysk4Dw&sig2=QGQ-FZ_czUvdW81ejhzxFQ
- 1 http://ipv6.google.com.hk/search?q=topcoder+srm+552+div1+250&hl=zh-CN&safe=strict&biw=1245&bih=783&noj=1&site=webhp&prmd=imvns&ei=CbtFULzSH4qyiQf_9IDADA&start=30&sa=N
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved=0CDIQFjAC&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120703/1341334517&ei=ixpGUPqoL66jiAf4-IDABA&usg=AFQjCNHiapAnq_bxcd5icQvaQ5gm7ScfMw&sig2=SvuEKxQnmUXNtlZOiAqJ5A
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=srm 554&source=web&cd=4&ved=0CDcQFjAD&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120903/1346625368&ei=XyVGUKm_DKuuiQeD24Fo&usg=AFQjCNH4c7HsvsOtdtC6queBcNKXzcYRGQ