2019-12-31から1日間の記事一覧

New Year Parties - #611 div3 e

#greedy #min #max #種類数 #数列 問題 https://codeforces.com/contest/1283/problem/E 解法 min について 1 回の merge で 1 つ数が減るよって min(残りの種類数) = min(元の種類数 - 減らせる種類数) = min(元の種類数 - max(merge の回数) ) 1 2 4 5 で,…

Almost All Divisors - #560 div3 d

#math #条件厳密 解法 editorial の解法 ans は, -1 でなければ, 数列の 2 数から作れる sample 8 8 2 12 6 4 24 16 3 を sort する 2 3 4 6 8 12 16 24 ans = 48 = 2 * 24 = 3 * 16 = 4 * 12 = 6 * 8 別解 各素因数ごとに最小何か求める 最小なのは, 他の素…

Make Good - goodbye 2019 c

#xor editorial の補足 解法1 数列に同じ 2 数を足しても xor は変わらない sum は 2 * その数増える2 * xor = sum にしたい 数列に足す 2 数は, (2 * xor - sum) / 2 ただし, 2 * xor - sum が偶数かつ 2 * xor ≥ sum 2 * xor は偶数より, sum が偶数残り 1…

Interesting Subarray - goodbye 2019 b

問題 https://codeforces.com/contest/1270/problem/B 解法 単純なケースを考えるまず, 隣り合う 2 要素で YES になるのはどんな時か 差が 2 以上すべて, 差が 1 以下なら, どの区間を取っても最大で差がその区間の長さ - 1 答えは NO にならない