AtCoder, 数学

問題方針

シミュレーションすると分かると思いますが、\( A_i \) の値は周期的に遷移します。剰余は \( 0 \) から \( M – 1 \) までの値を取ります。したがって、周期的になる前の \( A_i \) の ...

yukicoder, 数え上げ, 数学, 累積和

問題方針

\ であることを利用して、

\

となります。ここで、

\

について考えます。自然数 \( k \) を用いて、\( A_i \) が

\

を満たすとき、

yukicoder, 数学

問題方針

\( p = 2 \) のときは \( x = 2 \) が答えとなります。それ以外について考えます。フェルマーの小定理より、

\

となるので、自然数 \( t \) について、

\ ...

AtCoder, 幾何学

問題方針

最大値は辺の長さの総和となります。最小値は座標で考えると難しいので、図形として考えます。辺の長さを \( a < b < c \) とすると、\( c < a + b \) のとき三角形を作成することができま ...

yukicoder, 数え上げ, 数学, 累積和

問題方針

全ての手札の組み合わせは \( {}_{NM} \mathrm{ C }_{K} \) 通りありますが、確率を比較するうえでは必要ありません。フラッシュの総数は、同一のソートから \( {}_{N} \mathrm{ C }_ ...

yukicoder, 貪欲法

問題方針

配列の末尾から実際にシミュレーションしていきます。操作を行った回数を \( t \) とすると、\( i \) 番目のマスでは、\( A_i + t \) 個の石があり、操作回数は

\

と更新されます。 ...

AtCoder, 全探索, 動的計画法

問題方針

ショートカットは冗長に選んだとしても \( 4^4 \) 通りなので、全てのショートカットの組み合わせに対して必要なボタンの入力回数を求めます。ここで、\( d(i, 0) \) を \( i \) 文字をショートカットを使わ ...

AtCoder, 深さ優先探索

問題方針

\( 8 \) クイーン問題です。深さ優先探索によって解答します。初期値が当てられたとき、配置が可能かに注意します。

コード感想

解法はすぐに思い付いたというか知っていましたが、抜けがあって手間取りました。

AtCoder, 全探索

問題方針

中心座標の候補は最大でも \( 10000 \) 個なので、中心座標に関して全探索します。\( h_i \neq 0 \) であるとき、

\begin{eqnarray}
h_i &=& H ...

Codeforces, 動的計画法

問題方針

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