219272026-01-14 10:35:56hunzombiSípálya (55 pont)cpp17Elfogadva 55/5567ms8916 KiB
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);

    ll n, k;
    cin >> n >> k;

    vector<ll> vec(n);

    for (ll i=0; i < n; i++) cin >> vec[i];

    multiset<ll> ms;
    ll curr = 0;
    ll ans = LLONG_MAX;

    for (int i = 0; i < n; i++) {
        ms.insert(vec[i] + i);
        curr += vec[i];

        if (i >= k) {
            auto it = ms.find(vec[i - k] + (i - k));
            if (it != ms.end()) ms.erase(it);
            curr -= vec[i - k];
        }

        if (i >= k - 1) {
            ll L = i - k + 1;
            ll H = *ms.rbegin() - L;

            ll reqHeight = k * H - k * (k - 1) / 2;
            ll cost = reqHeight - curr;
            if (cost >= 0)
                ans = min(ans, cost);
        }
    }

    cout << ans << '\n';

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base55/55
1Elfogadva0/01ms508 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva1/14ms316 KiB
9Elfogadva1/14ms316 KiB
10Elfogadva1/14ms524 KiB
11Elfogadva1/14ms500 KiB
12Elfogadva1/13ms348 KiB
13Elfogadva1/14ms564 KiB
14Elfogadva2/24ms564 KiB
15Elfogadva2/24ms316 KiB
16Elfogadva2/259ms2336 KiB
17Elfogadva2/267ms6604 KiB
18Elfogadva2/264ms7116 KiB
19Elfogadva3/367ms8916 KiB
20Elfogadva2/263ms2772 KiB
21Elfogadva2/261ms2612 KiB
22Elfogadva2/261ms2512 KiB
23Elfogadva2/261ms2260 KiB
24Elfogadva2/261ms2508 KiB
25Elfogadva2/264ms2868 KiB
26Elfogadva2/264ms3128 KiB
27Elfogadva2/261ms3288 KiB
28Elfogadva3/363ms3380 KiB
29Elfogadva3/364ms3636 KiB
30Elfogadva3/364ms3636 KiB