Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <cstdio>#include <deque>#include <algorithm>using namespace std;struct chunk {int v, s, e;};int main() {int n, m;scanf("%d%d", &n, &m);deque<chunk> que;int c;bool f = true;for (int k = 1; k <= n; ++k) {if (f)scanf("%d", &c);if (que.empty()) {que.push_back({k, 0, c - 1});} else {bool flag = false;int minK = n + 1;int idx = -1;for (int i = 0; i < que.size(); ++i) {if (minK > que[i].v) {minK = que[i].v;idx = i;}if (i == 0) {if (c - 1 < que[i].s) {