文字列と配列操作に関するアルゴリズム解析

コードのマクロ定義とフレームワークの約束 #include <bits/stdc++.h> using namespace std; #define FASTIO ios::sync_with_stdio(false); cin.tie(nullptr); #define ENDL '\n' #define RANGE(_x, _y) (_x).begin(), (_x).end() #define LOOP(_i, _s, _e) for (int _i = _s; _i < _e; ++_i) typedef long long ll; const int MAXN = 200010; signed main() { ...

8月2日 05:41 投稿

洛谷 P10878 [JRKSJ R9] 在相思树下 III - 解法解説

**問題リンク** 解析 操作1の性質 最小値が配列の末尾に存在する場合、その値は他の数を更新することができないため、削除されることになる。一方、最小値が末尾以外に存在する場合は、必ずその右側にある更大的な値によって更新される。 したがって、操作1を適用すると、最小値は必ず更新(または削除)される。 操作2の性質 同様の考察から、操作2を適用すると ...

5月18日 08:51 投稿