Codeforces に関するカテゴリーです。

Codeforces, 数え上げ, 累積和, 貪欲法

問題方針

AGC 023 A – Zero-Sum Ranges と似ている問題です。\( s \) を \( a \) の累積和として、

\

とします。また、\( s_0 = 0 \) です。ある部 ...

Codeforces, 数学, 貪欲法

問題方針

\( i \) 回目の操作後の数列の総和を \( s_i \)、数列の最大値を \( b_i \) とすると、

\

となるので、先にインクリメントしてからコピーする方が最適だと考えられます。ここで、イン ...

Codeforces, 数学, 整列

問題方針

自然数 \( a, b \) が

\

を満たすとき、\( 2^{i} \leq a, b \leq 2^{i+1} -1 \) を満たす \( i \) が存在します。これは同じビット数で表現できる数は ...

Codeforces, フェニック木

問題方針

バブルソートを行った回数を求めるために、フェニック木 (BIT) を使います。詳しくは下記の参考を参照してください。

コード参考

Codeforces, 動的計画法

問題方針

友人の行動は、ボスを倒すまたはボスをスキップすることができます。また、自分と友人は最低でも \( 1 \) 体のボスに対応しなければならなく、\( 1 \) 回のセッションで最大で \( 2 \) 体のボスを倒すことができます ...

Codeforces, 数学, 整列

問題方針

\( n \) 個の整数 \( a \) が与えられ、

\

の最大値を答えます。添え字に制約がありますが、この問題は \( a \) から任意に \( 5 \) 個の整数を選ぶことができます。したがって ...

Codeforces, 数学

問題方針

剰余の単調増加性を利用して解きます。自然数 \( x, y \) を用いて \( x \bmod y \) と \( y \bmod x \) を考えます。また、\( x \neq y \) とします。

\ ...

Codeforces, 全探索, 数学

問題方針

配列 \( a \) を入れ替えて得られる配列を \( b \) とします。ここで、\( g(a, b) \) を \( a, b \) の最大公約数とします。次に配列 \( c \) の \( i \) 番目の要素を ...

Codeforces, 実装

問題方針

配列 \( a \) から並びを変えずに \( \dfrac{n}{2} \) 個以上要素を選んだ配列を \( b \) としたとき、\( b \) が \( b \) の奇数番目の和と偶数番目の和が等しくなるようにします。

Codeforces, 数学, 貪欲法

問題方針

イメージとしては下位の桁の数字を \( 0 \) にしていくためのコストから計算していきます。

自然数 \( n \) の桁和を \( f(n) \) とします。自然数 \( n, s \) が与えられたとき、