39992023-03-08 07:33:251478Sípálya (55 pont)cpp17Wrong answer 0/55159ms21720 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    //ifstream cin("in.txt");
    int n;
    cin >> n;
    int k;
    cin >> k;
    vector<int> heights(n + 2);
    vector<int> ps(n + 1);
    for(int i = 1; i <= n; i++){
        cin >> heights[i];
        ps[i] = ps[i - 1] + heights[i];
    }

    multiset<int> s;
    for(int i = 1; i <= k; i++){
        s.insert(heights[i] + i);
    }

    int ans = INT_MAX;
    for(int i = k; i <= n; i++){
        int actualsum = ps[i] - ps[i - k];
        int neededsum = (*s.rbegin() * 2  - i * 2 + k - 1)*k/2 ;
        cout << ans << " " << s.size() << '\n';
        ans = min(ans, neededsum - actualsum);
        s.erase(s.lower_bound(heights[i - k] + i - k));
        s.insert(heights[i + 1] + i + 1);
    }
    cout << ans;



    return 0;
}
SubtaskSumTestVerdictTimeMemory
base0/55
1Wrong answer0/03ms1808 KiB
2Wrong answer0/03ms2056 KiB
3Runtime error0/23ms2324 KiB
4Runtime error0/23ms2548 KiB
5Wrong answer0/23ms2656 KiB
6Wrong answer0/23ms2888 KiB
7Wrong answer0/33ms3080 KiB
8Wrong answer0/19ms3388 KiB
9Wrong answer0/19ms3640 KiB
10Wrong answer0/19ms3772 KiB
11Runtime error0/17ms4104 KiB
12Runtime error0/16ms4288 KiB
13Runtime error0/18ms4588 KiB
14Wrong answer0/28ms4512 KiB
15Runtime error0/27ms4408 KiB
16Runtime error0/294ms8272 KiB
17Wrong answer0/2140ms16944 KiB
18Wrong answer0/2138ms17992 KiB
19Wrong answer0/3123ms21720 KiB
20Wrong answer0/2158ms9464 KiB
21Runtime error0/2156ms9516 KiB
22Runtime error0/2158ms9612 KiB
23Runtime error0/2109ms9016 KiB
24Runtime error0/2119ms9368 KiB
25Wrong answer0/2159ms9796 KiB
26Wrong answer0/2158ms10316 KiB
27Wrong answer0/2159ms10448 KiB
28Wrong answer0/3158ms10584 KiB
29Wrong answer0/3157ms11144 KiB
30Wrong answer0/3155ms11576 KiB