Hatena::Grouptopcoder

hotpepsiの練習帳

2017-08-27

TCO17 Algorithm Round 1A

13:37

Easy (250) PingPongQueue

問題

  • 何人かで卓球をする
  • 一列に並び、2人ずつ対戦する
  • 各自の実力が配列skillsで与えられる
  • 実力が高い方が必ず勝つ
  • 負けるか、連続でN回勝ったら列の最後に並ぶ
  • Kゲーム目の対戦カードを求める

方針

https://github.com/firewood/topcoder/blob/master/tco_2017/PingPongQueue.cpp

Medium (500) CheeseSlicing

問題

  • A×B×Cの大きさのチーズを切る
  • どれかの面に平行に切る必要がある
  • 切断後の長さが整数の値であること
  • 3辺のうちいちばん小さい値を厚みとする
  • 残りの辺の積をチーズの面積とする
  • 厚みがS以上の塊に切るとき、面積の合計の最大値を求める

方針

  • 3辺それぞれの切り方をDFSで全部試す
  • メモ化
  • Passed System Test

https://github.com/firewood/topcoder/blob/master/tco_2017/CheeseSlicing.cpp

結果

216.52 + 311.48 = 528.00pt 233rd/886 1686 -> 1676 (-10)

easyは「連続で」が抜けてたり、意外とchallengeの余地あったらしい。


https://togetter.com/li/1096655

トラックバック - http://topcoder.g.hatena.ne.jp/firewood/20170827