かんプリンの学習記録

勉強したことについてメモしています. 主に競技プログラミングの問題の解説やってます.

データ構造

ABC299 G - Minimum Permutation

問題はこちら 目次 問題概要 解説 提出プログラム 感想 問題概要以上以下の整数からなる長さの数列の長さ部分列であってが回ずつ登場するもののうち,辞書順最小のものを答えよ. 解説辞書順最小と言えば,前から貪欲に置けるもののうち最も小さいものを順に…

ABC287 G - Balance Update Query

問題はこちら 目次 問題概要 解説 提出プログラム 感想 問題概要種類のカードがあり,最初,種類目のカードの得点は,枚数は枚である.以下の形式の個のクエリを順に処理せよ. 種類目のカードの得点をに変更 種類目のカードの枚数をに変更 枚のカードを選ぶ…

ABC284 F - ABCBAC

問題はこちら 目次 問題概要 解説 提出プログラム 感想 問題概要長さの文字列が与えられる.長さの文字列であって,となるようなものを求めよ. 解説で文字列の文字目から文字目までの文字列とします. で文字列を反転させた文字列とします.すべてので以下…

ABC256 D - Union of Interval

問題はこちら 問題概要 解説 提出プログラム 感想 問題概要個の半開区間の和集合を求めよ. 解説以下のように半開区間の集合に新たに半開区間を追加することを考えます.このような追加を高速に行うことができれば解くことができそうです. 既に集合に含まれ…

ABC234 D - Prefix K-th Max

問題はこちら 問題概要 解説 提出プログラム 感想 問題概要の順列および正整数が与えられる.について以下の値を求めよ. の先頭項のうち,番目に大きい値 解説公式解説にもある通り優先度付きキューで解けますが,BinaryTrieでも解くことができます.Binary…

ABC231 C - Counting 2

問題はこちら 問題概要 解説 提出プログラム 感想 問題概要長さの数列について以下の個のクエリに答えよ. が与えられる.となるの数を答えよ. 解説これはBinaryTrieで解くことができます.BinaryTrieは整数の(多重)集合を管理することができるデータ構造で…

ARC129 E - Yet Another Minimization

メモがてら書きます.問題はこちら 問題概要 解説 提出プログラム 感想 問題概要長さの数列を作る.各には個の選択肢があり,を選ぶとのコストがかかる.さらに,各についてのコストが追加でかかる.コストの総和の最小値を求めよ.解説複数の選択間にコスト…

ABC217 D - Cutting Woods

問題はこちら 問題概要 解説 Pythonでの解法 感想 問題概要長さの木材がある.以下の個のクエリを処理せよ.番目のクエリはで与えられる. のとき:木材の左端からの地点で木材を切る. のとき:木材の左端からの地点を含む木材の長さを出力する. 解説現在…

ABC214 C - Distribution

問題はこちら 問題概要 解説 提出プログラム 感想 問題概要人が円周上に並んでいる.番目の人は時刻に宝石をもらうと時間後にその宝石を番目の人に渡す.ただし,とする.また,高橋君は時刻に番目の人に宝石を渡す.すべてのについて,番目の人が初めて宝石…

ABC201 F - Insertion Sort

問題はこちら 問題概要 解説 提出プログラム 感想 問題概要がいて,左から番目は人である.以下の種類の操作を繰り返し,人を昇順に並び替えるときのコストの最小値を求めよ. コストを払い,人を好きな位置に移動させる. コストを払い,人を左端に移動させ…

ABC194 E - Mex Min

問題はこちら 問題概要 解説 に整数を追加する場合 から整数を削除する場合 のmexを求める ほかにも 提出プログラム 感想 問題概要長さの整数列が与えられる.の連続する長さの区間すべてについてのmexのうち最小値を求めよ.解説 最初の区間についてmexを求…

yukicoder No.1400 すごろくで世界旅行

問題はこちら 問題概要 思考の流れ 提出プログラム 感想 問題概要頂点の重み無し有向グラフの隣接行列が与えられる.任意の頂点から任意の頂点までちょうど本の辺を辿って行くことのができるか判定せよ.思考の流れ yukicoder No.1340 おーじ君をさがせとほ…

Educational Codeforces #95 D Trash Problem

問題はこちら 問題概要 思考の流れ 提出プログラム 感想 問題概要数直線上のの位置にあるゴミを2つ以下の座標に集める. 1回の操作につき, 座標にあるゴミをまとめてかに移動させることができる. 最小の操作回数を求めよ. また, ある座標へのゴミの追加や削除…

Codeforces #665 (Div. 2) E Divide Square

問題はこちら 問題概要 思考の流れ 提出プログラム 感想 問題概要座標平面上のの4点を頂点とする正方形がある. この平面上に描かれる, 座標軸に平行な線が本与えられる(軸に平行な線が本, 軸に平行な線が本). すべての線は正方形の少なくとも一辺と交差して…

yukicoder No.1209 XOR Into You

問題はこちら 問題概要 思考の流れ 提出プログラム 感想 問題概要長さの数列とが与えられる. となるを選んでをに変更する. この操作を何回か行ってにできるとき, 最小操作回数を求めよ.思考の流れ隣り合ったものに対して操作を行う場合, 隣り合ったものの差…

ABC177 F - I hate Shortest Path Problem

問題はこちら 問題概要 思考の流れ 提出プログラム 感想 問題概要縦横マスのマス目の一番上のマスから1つを選んで右か下に1マスずつ移動する. ただし, 行目のマスから下に移動することはできない. のについて, 行目のいずれかのマスに移動するための最小移動…