rng_58
@rng_58_old
C: a に操作してできる文字列は a または a + (a 以外の一文字) + (0 文字以上の任意の文字列) であることを利用して DP
2015-01-04 17:53:38
rng_58
@rng_58_old
E: 寝ながら DP すると O(N^3)、次数和が 2(N-2) 以外のものを無視すると O(n^2)、次数 2 の頂点を取り除いて縮約すると O(N)
2015-01-04 17:55:42
rng_58
@rng_58_old
F: M を増やしていくと x の属するグループが代わるタイミングが O(sqrt(x)) 回なのでそういうものを全部試す
2015-01-04 17:57:03
rng_58
@rng_58_old
H: 二分探索 -> 45 度回転 -> union find で xmax, xmin, ymax, ymin の頂点を含む辺のみをはる
2015-01-04 17:59:00
rng_58
@rng_58_old
I: 一文字ずつ追加していって、(P の位置、Q の位置) として考えられる集合をもって DP (そういうものは O(N^2) しかない)
2015-01-04 18:00:42
rng_58
@rng_58_old
J: まず原点からスタートしてちょうど n 歩歩いて初めて原点に戻ってくる、という経路の数を各 n に対して求めて適切な係数をかけて足す
2015-01-04 18:01:47
rng_58
@rng_58_old
適当な解説を書きました、もう少し詳しい解説は後で書くのでリクエストのある問題を clarification タブから送ってください
2015-01-04 18:06:00