文字列と配列操作に関するアルゴリズム解析
コードのマクロ定義とフレームワークの約束
#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 投稿