ツバサの備忘録

主に備忘録代わりに精進記録を載せていくつもりです。

精進メモ 2021/06/07~

最近暑いです。

競プロ典型 90 問

060 - Chimera(★5)

右からと左からでLISを求めていけばいいです。
LIS(典型) + 左右からみる(典型)で割と好きです。

061 - Deck(★2)

vectorを二本持ちました。
添え字に脳みそをやられて時間がかかりましたがなんとかノーペナです。

062 - Paint All(★6)

iからA_{i}B_{i}に辺をはると、BFSで解くことができます。
i = A_{i},i = B_{i}となっている頂点群を始点とすればいいです。

063 - Monochromatic Subgrid(★4)

選ぶ行をビット全探索します。チェックやカウントは愚直でいいです。

063 - Monochromatic Subgrid(★4)

階差を取って差分更新です。

ARC122

Dが間に合わなくて悔しいです。Eも見ておくべきでした。

A - Many Formulae

ある値について正負を決めた時、右と左のパターン数をかけてあげればよいです。パターン数はDPで計算できます。

B - Insurance

x = A_{i} / 2を全探索すればいいです。
中途半端なxについてはどちらかに寄せると値が小さくなります。

C - Calculator

操作3,4を繰り返すと出現する値はフィボナッチになります。
途中で操作1,2を割り込ませて、その操作に対する寄与をうまく考えればいいです。

D - XOR Game

大きいビットから貪欲に、再帰的に決めていけばいいです。
一番上のビットが0,1それぞれ偶数であった場合、それぞれのグループの同士で組み合わせにしたときの最大値が答えです。
そうでない場合、0のものと1のものをペアにしたものの最小値が答えです。
この後は、2つのグループを持ちながら再帰的に解きます。
このパートも、ほぼ似たようなことをすればいいです。

E - Increasing LCMs

後ろからみて問題無いです。今残っている要素について、
A_{i} \neq {\rm lcm} ( \gcd (A_{i},A_{j})) (i \neq j)
を満たすiがあれば、選択できます。
これを繰り返せばよいです。

典型90問 065 - RGB Balls 2(★7)

赤と緑でX個以下は、青がK-X個以上、という条件と同値です。
全てこれを適用すると、三色それぞれが一定の個数以上で、合計K個選ぶようなパターン数を求める問題になります。
これは二項係数 + NTTで解くことができます。
同値条件の言い換え、明後日の方向に行っていました…

ABC205

久々に成功しました。

C - POW

Cが奇数なら1、偶数なら2に置き換えればいいです。
あとは素直に累乗して比較です。
無限場合分けが実は必要ないので好きです。

D - Kth Excluded

にぶたんで答えを求めます。
判定部分でもにぶたんをします。境界を丁寧に詰めないと破滅します。

E - White and Black Balls

カタラン数を知っていると、「カタラン数 折り返し」でググると本質が出てきます。
手元でうんうんうなっていると、_{N+M}C_{N} - _{N+M}C_{N-K-1}が答えということがわかります。
そもそも答えが0になるケースを除外し忘れないようにしましょう(1ペナ)

F - Grid and Tokens

ソース -> 行 -> 駒 -> 駒 -> 列 -> シンク
としてマッチングをします。