AtCoder,全探索,数え上げ,数学

問題方針\( A, B \) を全探索

\( A, B \) を全探索します。\( A \) を固定した時、\( A \times b \geq N \) となるような \( b \) より大きいものを探索する必要はありません。 ...

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

問題方針

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

\

となります。ここで、

\

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

\

を満たすとき、

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

問題方針

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

AtCoder,数え上げ

問題方針方針1

行と列はそれぞれ独立に選ぶことができることに注目します。 \( i \) 行目にある爆弾の個数を \( R(i) \) とし、\( j \) 列目にある爆弾の個数を \( C(j) \) とします。マス \( (i, j ...

AtCoder,数え上げ,累積和

問題方針

配列の添え字を \( i, j (i < j) \) とすると、

\begin{eqnarray}
j – i &=& A_i + A_j \\
i + A_i & ...

AtCoder,全探索,数え上げ

問題方針

\( 1 \leq x, y, z \leq \sqrt{N} \) の範囲で全探索します。

コード#include <bits/stdc++.h>using namespace std;typedef long ...

AtCoder,数え上げ

問題方針

エラトステネスの篩のような考え方で約数を数え上げます。

\( i \) の約数の個数 \( a(i)\) とすると、\( 1 \leq ij \leq 10^7 \) を満たす、\( 1 \leq i \leq 1 ...

数え上げ

問題方針

数列の要素の頻度を管理することで、各操作における偏差が計算できます。偏差が計算できれば、操作後の数列の総和を求められます。

コード#include <bits/stdc++.h>using namespace st ...

AtCoder,数え上げ

問題方針

展望台 \( i \) が隣接している全ての展望台の中で一番高いかどうかという情報を求めます。これは、全ての道について、\( H(A_i) \) と \( H(B_i) \) という値を比較すれば十分です。

コード#in ...

AtCoder,数え上げ,数学

問題方針

\( n \) 個の自然数から任意の個数の和の組み合わせは、

\

となります。これは、最大値が \( n \) 個の和であるためです。ここで、関数 \( f(x) \) を

\

...