2015-04-28から1日間の記事一覧
解法 SRM 633 Div1 Easy, PeriodicJumping - na_o_ysのブログna-o-s.hateblo.jp幾何だ!難しそう!ってなってしまうの良くないなぁ…… コード public class PeriodicJumping { public int minimalTime(int x, int[] jumpLengths) { x = Math.abs(x); if (x ==…
解法 例えばs="2014"の時、 となる。 素因数に2を含む個数は、x=4の時、P(4)は5個、P(5)なら4個、P(6)なら4個、P(7)なら8個、P(8)なら……と増えていくが、正の個数で最小の個数は4個であることが分かる。このように各素数ごとに素因数の最小個数を求めると、"…
解法 二分探索するだけ。(なぜかできなかった) コード public class ProblemSets { public long maxSets(long E, long EM, long M, long MH, long H) { long low = 0; long high = Long.MAX_VALUE; while (high - low > 1) { long mid = (high + low) / 2;…
解法 TopCoder SRM 634 Div1 Easy ShoppingSurveyDiv1、Div2 Medium ShoppingSurveyDiv2 - kmjp's blogkmjp.hatenablog.jp コード import java.util.Arrays; public class ShoppingSurveyDiv1 { public int minValue(int N, int K, int[] s) { for (int p = …
解法 Nが400以下なので、N-1個の区間の長さと傾きを計算しておき、傾きが等しく、長さの倍率が等しい区間を出せば良い……がっ……ダメっ……!!誤差ゲーなので値が小さくなり過ぎないように気をつけなければならない。 コード import java.util.ArrayList; impor…