C♯の勉強

C♯4.0 で TopCoder の過去問を解きます。

2014-01-11から1日間の記事一覧

TopCoder SRM603: MaxMinTreeGame

与えられるグラフは木のため、少なくとも2つは葉がある。先行は、最初のターンで葉だけを残すことができるため、葉の最大コストのスコアを保証することができる。 後攻は、先行が即ゲーム終了しなかった場合だけ、ターンが回ってくる。初期状態の葉のうちの…

TopCoder SRM603: SplitIntoPairs

\(X Aを負の数のグループと、非負の数のグループに分ける。 同じグループ同士でペアを作ると積は必ず 0 以上になり、それぞれのグループは高々1つだけあまる。 もし両方のグループで1つずつ余った場合は、それらでペアを組むようにすればよい。 public cla…

TopCoder SRM603: PairsOfStrings

久しぶりに本番で通ったMedium。A + C = C + B が成立するときは A は B を巡回シフトさせたものになる。 よって、もし A の文字列の最小周期が x だった場合は、対応するペアの個数は x になる。周期が x の文字列の個数は n % k == 0 のときは \(k^x\) 、…