| 18729 | 2025-11-01 11:59:15 | PKB | Lapozgatás | cpp17 | Elfogadva 100/100 | 43ms | 2036 KiB |
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
ll M, K; int N;
if (!(cin >> M >> K >> N)) return 0;
vector<ll> A(N);
for (int i = 0; i < N; ++i) cin >> A[i];
map<ll,ll> seg; // start-end intervallum
seg[K] = K;
ll curr = K, total = 0;
int starts = 0;
auto seen = [&](ll x)->bool{ //lambda
auto it = seg.upper_bound(x);
if (it == seg.begin()) return false;
--it;
return it->first <= x && x <= it->second;
};
for (ll t : A) {
if (seen(t)) continue;
++starts;
total += llabs(curr - t);
ll L = min(curr, t), R = max(curr, t);
auto it = seg.lower_bound(L);
if (it != seg.begin()) {
--it;
if (it->second < L - 1) ++it;
}
// összeolvasztás
while (it != seg.end() && it->first <= R + 1) {
L = min(L, it->first);
R = max(R, it->second);
it = seg.erase(it);
}
seg[L] = R;
curr = t;
}
cout << starts << " " << total << '\n';
return 0;
}
| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Elfogadva | 1ms | 316 KiB | ||||
| 2 | Elfogadva | 1ms | 316 KiB | ||||
| subtask2 | 12/12 | ||||||
| 3 | Elfogadva | 1ms | 316 KiB | ||||
| 4 | Elfogadva | 1ms | 316 KiB | ||||
| 5 | Elfogadva | 1ms | 316 KiB | ||||
| subtask3 | 24/24 | ||||||
| 6 | Elfogadva | 1ms | 328 KiB | ||||
| 7 | Elfogadva | 1ms | 316 KiB | ||||
| 8 | Elfogadva | 1ms | 316 KiB | ||||
| 9 | Elfogadva | 1ms | 508 KiB | ||||
| 10 | Elfogadva | 1ms | 316 KiB | ||||
| 11 | Elfogadva | 1ms | 508 KiB | ||||
| subtask4 | 28/28 | ||||||
| 12 | Elfogadva | 41ms | 1844 KiB | ||||
| 13 | Elfogadva | 39ms | 1844 KiB | ||||
| 14 | Elfogadva | 37ms | 1844 KiB | ||||
| 15 | Elfogadva | 34ms | 1848 KiB | ||||
| 16 | Elfogadva | 32ms | 2028 KiB | ||||
| 17 | Elfogadva | 29ms | 2036 KiB | ||||
| 18 | Elfogadva | 29ms | 1848 KiB | ||||
| subtask5 | 36/36 | ||||||
| 19 | Elfogadva | 43ms | 1844 KiB | ||||
| 20 | Elfogadva | 41ms | 1844 KiB | ||||
| 21 | Elfogadva | 39ms | 2028 KiB | ||||
| 22 | Elfogadva | 37ms | 2036 KiB | ||||
| 23 | Elfogadva | 35ms | 1844 KiB | ||||
| 24 | Elfogadva | 32ms | 1772 KiB | ||||
| 25 | Elfogadva | 30ms | 1844 KiB | ||||
| 26 | Elfogadva | 30ms | 1968 KiB | ||||
| 27 | Elfogadva | 29ms | 1844 KiB | ||||