[yukicoder] No. 0921 ずんだアロー
問題方針大きさが異なっている隣り合う餅をずんだ餅にする場合
この場合、大きさが小さい餅が消えてしまうので適切ではありません。例えば、\( A = (1, 2, 3, 4, 5) \) の配列において、\( 1 \) 番目と \( 2 \ ...
[yukicoder] No. 0939 and or
問題方針
\( X, Y \) を \( 2 \) 進数で表現したときの \( i \) 番目のビットを \( x_i, y_i \) とします。同様に \( A, B \) についても \( a_i, b_i \) とします。条件より ...
[yukicoder] No. 0938 賢人を探せ
問題方針
カンニングされた人がカンニングを行っていないかどうかを調べます。これはセットを使って実現することができます。
コード#include <bits/stdc++.h>using namespace std;ty ...
[AtCoder] 三井住友信託銀行プログラミングコンテスト2019 D – Lucky PIN
問題方針
長さが \( N \) の文字列から \( 3 \) 文字取り出すことを考えると、計算量は \( {}_{N} \mathrm{ C }_{3}\) となってしまうので、別の方法を考えます。考えられる文字列は \( 1000 ...
[AtCoder] 三井住友信託銀行プログラミングコンテスト2019 C – 100 to 105
問題方針
動的計画法を行い、\( X \) を作れるかどうかを調べます。\( i \) 円が作れるとき、\( i + 100 \) 円も作れるというような方針で実装します。
コード#include <bits/stdc++. ...
[yukicoder] No. 927 Second Permutation
問題方針
順列に関する問題です。ライブラリの prev_permutation() を利用しましょう。
コード#include <bits/stdc++.h>using namespace std;typedef lo ...
[AtCoder] Educational DP Contest G – Longest Path
問題方針
トポロジカルソートを利用するみたいです。
コード#include <bits/stdc++.h>using namespace std;typedef long long ll;int main() { in ...
[AOJ] GRL_4_B トポロジカルソート
問題方針
閉路のない有効グラフに対して頂点を一列に整列させることができます。
コード#include <bits/stdc++.h>using namespace std;typedef long long ll;in ...
[AtCoder] Educational DP Contest F – LCS
問題方針
いわゆる最長共通部分列問題ですね。有名なアルゴリズムなので、ググりましょう。
コード#include <bits/stdc++.h>using namespace std;typedef long long ...
[AOJ] No. 0556 タイル (Tile)
問題方針
上下左右対称であることを利用して解きます。\( 1 \leq x \leq \lceil \dfrac{N}{2} \rceil \) かつ \( 1 \leq y \leq \lceil \dfrac{N}{2} \rcei ...