2015-04-04から1日間の記事一覧

SRM 637 Div. 1 Easy: GreaterGame

問題 TopCoder Statistics - Problem Statementsnukeさん 解法 見えている部分については、勝てるカードがあればできるだけ小さいカードで勝ち、勝てない時は小さいカードで負けるようにする。見えていない部分はどうしようもないので期待値を出す。 コード …

SRM 636 Div. 1 Easy: ChocolateDividingEasy

問題 TopCoder Statistics - Problem Statement 解法 どう見ても累積和の問題なんだけど、愚直な全探索で通った(通った)。 コード public class ChocolateDividingEasy { public int findBest(String[] choco) { int H = choco.length; int W = choco[0].l…

SRM 652 Div. 2 Hard: NoRightTurnDiv2

問題 TopCoder Statistics - Problem Statement 解法 点0から始めて、曲がり角が最も大きくなるように貪欲に点を取っていくと上手くいく。 コード public class NoRightTurnDiv2 { double[] direction(int[] X, int[] Y, int from, int to) { // fromからto…

SRM 653 Div. 2 Hard: SingingEasy(動的計画法)

問題 TopCoder Statistics - Problem Statement 解法 動的計画法を使う。アリスが最後に歌った曲とボブが最後に歌った曲に対応する難易度の最小値をメモしておく。 コード public class SingingEasy { public int solve(int[] pitch) { int N = pitch.length…

SRM 654 Div. 2 Hard: SuccessiveSubtraction2

問題 TopCoder Statistics - Problem Statement 解法 どのように括弧を挿入しても、a[0]は必ず正、a[1]は必ず負になる。 a[2]からa[i]までの合計値をとる。 ただしa[2]からa[j]までの合計値が負になるとき、-a[2]から-a[j]までの合計値は正になるので、a[2]…