整列に関するカテゴリーです。

AtCoder,数学,整列,貪欲法

問題方針

まず初めに演説を行わなかったときを考えます。青木君得票数は \( A_i \) の総和なので、その得票数を \( s_0 \) とすると、

\

となります。また、高橋君の得票数を \( t_0 \) と ...

Codeforces,尺取り法,整列

問題方針

\

\( (1)\) を満たすような \( a_i, a_j, a_k \) は、\( i, j, k \) を交換することによって、\( i < j < k \) を満たすことができます。つまり、\( ...

AtCoder,整列

問題方針

\( 1 \) から \( N \) まで順番に交換ソートしていくことを考えます。自然数 \( i \) がどの場所にいるかという配列を管理することで効率よくソートできます。

コード#include <bits/s ...

AtCoder,二分探索,整列,累積和,貪欲法

問題方針

\( H, W \) を昇順に並び替えても一般性は失われないので、昇順に並び替えます。例えば、\( 2n \) 人の児童の最適なペアは

\

であると考えられます。これを問題に当てはめて考えると、\( N ...

Codeforces,整列

問題方針

配列 \( a \) の総和が \( 0 \) のときは条件を満たす \( b \) は存在しません。配列 \( a \) の総和を \( s \) とすると、\( s > 0 \) のとき、\( a \) を降順に並べ ...

Codeforces,数学,整列

問題方針

自然数 \( a, b \) が

\

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

Codeforces,数学,整列

問題方針

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

\

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

AtCoder,全探索,整列

問題方針全探索

赤色、緑色、無色のリンゴの美味しさを降順に並び替え、その累積和をそれぞれ、\( P, Q, R \) とします。また、\( i \) 個のリンゴの累積和を \( P(i) \) のように表します。次に、無色のリンゴを \ ...

AtCoder,実装,整列

問題方針

数字の桁数を増やすことで新たなルンルン数を得ることを考えます。あるルンルン数 \( s \) の末尾の数字を \( d \) とすると、\( 10s + d, 10s + d – 1 , 10s + d + 1 \ ...

AtCoder,整列

問題方針

マップを使って文字のカウントをし、最多得票の文字列を辞書順に出力します。自作の比較関数を定義すれば整列を楽に行えます。

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