2018-12-20から1日間の記事一覧
問題 解法 解答 問題 atcoder.jp 解法 連続する3つの要素を逆順にする操作は真ん中の要素を挟んでいる2つの要素を swap することと同じなので,A の奇数番目の要素と偶数番目の要素それぞれがソートされる.なので,ソートされた後の A で奇数番目の要素で…
問題 解法 解答 問題 atcoder.jp 解法 '(' を +1,')' を -1 として累積和 imos を取った時,当てはまる (i, j) の組は imos[i] == imos[j] - 1 imos[k] >= imos[j] - 1 (i <= k <= j) を満たしていればよい.1つ目の条件にあてはまる (i, j) の組を std::m…
問題 解法 解答 問題 atcoder.jp 解法 dp1(b, i) := 今残っている商品が b で,財宝を i 個売却した時に商品を買って取引を終了する場合,得られる最大のスコア dp2(b, i) := 今残っている商品が b で,財宝を i 個売却した時に得られる最大のスコア の2つ…
問題 解法 解答 問題 atcoder.jp 解法 A チームでの総 kill 数は B チームでの総 death 数になり,その逆もそうなる.チーム内で同じ kill 数を1グループとしてみると,グループ内で death 数を分割すると考えられるので,分割数のアルゴリズムを使える.あ…
問題 解法 解答 問題 atcoder.jp 解法 頂点 1 から N へのスコアを最大化するパス上に閉路があるならば,スコアを無限に大きくできる.これをベルマンフォード法を用いて調べればよい.辺のコストの符号を逆にすることでスコアを最大化できる.O(NM). 解答 …