実装系の問題に関するカテゴリーです。

AtCoder, 実装, 整列

問題方針

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

AtCoder, 実装

問題方針

文字列 \( S \) を前後を反転してできる文字列を \( S^* \) とします。\( S \) の先頭に追加された文字列を \( L \) とし、末尾に追加された文字列を \( R \) とすると、最終的な文字列は、\( ...

AtCoder, 実装

問題方針

\( d_i \) を上位から \( i \) 桁目の数字とします。\( d \) を \( -1 \) で初期化し、条件を満たすように数字を決めた時、\( d_i \) が異なる数字を取るときは整数が存在しません。また、\( ...

AOJ, 二分探索, 実装, 探索

問題方針

時刻の変換と同じように、いったん最小単位に変換してから計算を行います。西暦からマヤ歴への変換は、2012年12月21日からどれだけの日数が経過したかどうかを計算します。このときうるう日に気を付けます。マヤ歴から西暦への変換は、 ...

AtCoder, 実装

問題方針

\( i \) 番目の問題を正解したかどうかという情報と \( i \) 番目の問題を初めて正解するまでに “WA” となった個数を数えれば良いです。これは、配列で管理することができます。

コード ...

AtCoder, 実装

問題方針

順列の生成を行えば良いので、next_permutuation を使います。

コード

 

AOJ, 実装, 探索, 深さ優先探索

問題方針

パズルは最大でも \( 8 \) 回の操作で解くことができるので、\( 4^7 \) 通りのパターンを調べれば良いです。したがって、深さ優先探索を行い、実際にシミュレーションを行います。

コード

 

AOJ, 実装

問題方針

コースターの画像のピクセルの添え字は、\( i \) 行 \( j \) 列を表していて、\( 0 \leq i \leq N – 1 \wedge 0 \leq j \leq N – 1 \) として ...

AOJ, 実装, 文字列

問題方針

制約が緩いので愚直に文字列を走査していきます。

古い看板から作ることができる看板の例を考えます。例えば、お店の名前の文字列の長さが \( 3 \) であり、古い看板の文字列の長さが \( 7 \) のとき、文字列の ...

AtCoder, 実装

問題方針シミュレーション

数列 \( H \) の先頭から実際にシミュレーションをしていきます。現在の最大の移動回数と現在の移動回数を保持しながら探索をします。

コード