2012-03-22
SRM 538
Div1 Easy (250) EvenRoute
問題
- N個の点が与えられる。
- 初期位置が(0,0)で、N個の点の全部を1回だけ経由するものとする。
- 位置のパリティがwantedParityと一致するかどうかを求める。
方針
- サンプルを読まずに適当に解く
- 死亡
- 解きなおし
- パリティは途中経路に関わらず、始点と終点との関係で決まる
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_538/EvenRoute.cpp
Div1 Medium (450) TurtleSpy
問題
- 左右の回転と前後の移動が可能なスパイロボットがある。
- N個のコマンド列が与えられ、それぞれを1回ずつ実行する。
- 最も遠くに移動できるような順番で実行したときの距離を求める。
方針
- 前進と後退それぞれをまとめた方が良さそう
- なるべく遠ざかるように角度を決めればよいのでは
- 180度に近づけるためにDPすればいけそう
- 角度で使わないやつは最初か最後に浪費させればよい
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_538/TurtleSpy.cpp
Div2 Easy (300) LeftOrRight
問題
- LかRからなるコマンド列が実行可能な機械がある。
- Lは左に、Rは右に一歩進む。
- コマンド列の一部が破損して?になっている。
- 破損したコマンドをLかRに補ったとき、初期位置から最遠点の距離を求める。
方針
- うしろからやるのかな...失敗
- 全ての?をLとRのどちらかに置換したときが最大
- 単純に、?が全部Lなのと全部Rなのの両方試せば良さそう
- 配列で持つ必要なかった
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_538/LeftOrRight.cpp
Div2 Hard (1050) SkewedPerspectives
問題
- 3色のブロックと、1x2の大きさの黒いブロックがある
- 幅w以内で縦に積む
- 横から見たときの図が与えられる
- その図になるように積めるかどうかを求める
方針
- analysisとkusanoさんのを読む
- 黒いブロックが偶数のときはただ積むだけ。奇数の場合に色々やればよい
- 奇数の黒いブロックは、横に積んで一つ隠す
- 一番下を1つだけ黒にすることはできないので、はじく
- 途中で黒が奇数のときは、今積んでいる列をやめて、うしろに今の位置-1個を積んでから、黒を積む
- ただし一番下が黒かつ奇数のときは、まず黒を積み、うしろに1個積んでから黒を積む
- https://github.com/firewood/topcoder/blob/master/srm_5xx/srm_538/SkewedPerspectives.cpp
結果
xx- 237.62*0 + 187.57*0 - 25 = -25 rating 1516 -> 1322
落ち着きと集中力を欠いた。しかし良い練習になった。
easyは基礎なのだが苦手。引数名の通り、パリティを求める問題。
mediumは提出したコードに二箇所バグがあった。具体的にはDPで同じ配列に代入していたので、最長になっていなかった。初歩だがいったん書くと発見しづらいので、計算量に余裕があるなら冗長でも丁寧に書くべき。しかし方針は合っていたようなので、前回(通ったが実装自体は単純)よりも、できた感じがした。
div2easyは珍しく300点。再帰で書くと2^50回呼ばれるから死亡。なるほど。
div1残留があぶなくなったので、次回は慎重にeasyを通すようにしたい。それとTCO楽しみ。
- 60 https://topcoder-g-hatena-ne-jp.jag-icpc.org/
- 3 http://www.google.co.jp/url?sa=t&rct=j&q=srm 538&source=web&cd=1&ved=0CC8QFjAA&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120322/1332432944&ei=V2x6T6CcIIjSmAWRm5zLAw&usg=AFQjCNHmrP3SgDG3G7L8QSjglwB1Kt0Vdw
- 2 http://www.google.co.jp/url?sa=t&rct=j&q=srm 536&source=web&cd=2&ved=0CDMQFjAB&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120308/1331218846&ei=ec5vT7asCPCeiAf5-syUBg&usg=AFQjCNEdk_xkTzJCqSH0QuDUj42_GboRVQ
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=5&ved=0CEYQFjAE&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20111023/1319349213&ei=mRJsT8u2OMGgmQXCwKyaBg&usg=AFQjCNEg8D5vXbeLHVcM_56Sks4wmlGCEQ
- 1 http://search.yahoo.co.jp/search?p=facebok+hacer+cup&search.x=1&fr=top_ga1_sa&tid=top_ga1_sa&ei=UTF-8&aq=&oq=
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=luckyremainder srm&source=web&cd=4&ved=0CDYQFjAD&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20110618/1308410422&ei=2eFtT52mF8qEtgenwdWYCA&usg=AFQjCNGu6_EsoPZ7fWss7SeFOwf4fpbD6Q
- 1 http://www.google.com/search
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=srm 536 div2&source=web&cd=1&ved=0CC8QFjAA&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120311/1331472394&ei=0cxvT4jGCMO1iQfK45yWBg&usg=AFQjCNH61iRP6jcKf_7yU9yJKmpy1pj8Lg
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=srm 536&source=web&cd=2&ved=0CDMQFjAB&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120308/1331218846&ei=pc1vT86TDIqsiAeW8uX7BQ&usg=AFQjCNEdk_xkTzJCqSH0QuDUj42_GboRVQ
- 1 http://www.google.co.jp/url?sa=t&rct=j&q=srm 536&source=web&cd=3&ved=0CDkQFjAC&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120311/1331472394&ei=ec5vT7asCPCeiAf5-syUBg&usg=AFQjCNH61iRP6jcKf_7yU9yJKmpy1pj8Lg