7388 2024. 01. 08 13:14:28 gkata Sípálya (55 pont) cpp17 Hibás válasz 0/55 93ms 12076 KiB
// sipalya.cpp : This file contains the 'main' function. Program execution begins and ends there.
//

#include <iostream>
#include <queue>

using namespace std;

int n, k, i, m=1000000000, s, ns, u, e;
vector<int>x,pf;
vector<pair<int, int>>v;
priority_queue < pair<int, int>>pq;

int main()
{
    cin >> n >> k;

    x.resize(n + 1);
    pf.resize(n + 1);

    for (i = 1; i <= n; ++i)
    {
        cin >> x[i];
        pq.push({ x[i],i });
        pf[i] = x[i] + pf[i - 1];
    }

    for (i = k; i <= n; ++i)
    {
        s = pf[i] - pf[i - k];
        v.clear();
        while (pq.top().second < (i - k + 1) && pq.top().second > i)
        {
            v.push_back(pq.top());
            pq.pop();
        }
        
        e = pq.top().first + (pq.top().second - (i - k + 1));
        u = e - k + 1;
        ns = ((e + u) * k) / 2;
        for (auto& e : v) pq.push(e);

        if ((ns - s) < m) m = ns - s;
    }

    cout << m;
}

/*
5 3
5 5 6 3 1
*/

// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu

// Tips for Getting Started: 
//   1. Use the Solution Explorer window to add/manage files
//   2. Use the Team Explorer window to connect to source control
//   3. Use the Output window to see build output and other messages
//   4. Use the Error List window to view errors
//   5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
//   6. In the future, to open this project again, go to File > Open > Project and select the .sln file
Részfeladat Összpont Teszt Verdikt Idő Memória
base 0/55
1 Elfogadva 0/0 3ms 1872 KiB
2 Hibás válasz 0/0 3ms 2064 KiB
3 Hibás válasz 0/2 3ms 2296 KiB
4 Hibás válasz 0/2 3ms 2512 KiB
5 Hibás válasz 0/2 3ms 2692 KiB
6 Hibás válasz 0/2 3ms 2920 KiB
7 Hibás válasz 0/3 3ms 3052 KiB
8 Hibás válasz 0/1 7ms 3580 KiB
9 Hibás válasz 0/1 7ms 4072 KiB
10 Hibás válasz 0/1 7ms 3924 KiB
11 Hibás válasz 0/1 6ms 3924 KiB
12 Hibás válasz 0/1 6ms 3952 KiB
13 Hibás válasz 0/1 7ms 3804 KiB
14 Hibás válasz 0/2 7ms 3888 KiB
15 Hibás válasz 0/2 7ms 4052 KiB
16 Hibás válasz 0/2 85ms 11016 KiB
17 Hibás válasz 0/2 85ms 11080 KiB
18 Hibás válasz 0/2 85ms 11356 KiB
19 Hibás válasz 0/3 85ms 11564 KiB
20 Hibás válasz 0/2 86ms 11772 KiB
21 Hibás válasz 0/2 85ms 11836 KiB
22 Hibás válasz 0/2 86ms 11964 KiB
23 Hibás válasz 0/2 86ms 11892 KiB
24 Hibás válasz 0/2 93ms 12056 KiB
25 Hibás válasz 0/2 86ms 12076 KiB
26 Hibás válasz 0/2 86ms 12000 KiB
27 Hibás válasz 0/2 86ms 11908 KiB
28 Hibás válasz 0/3 85ms 12076 KiB
29 Hibás válasz 0/3 85ms 11912 KiB
30 Hibás válasz 0/3 86ms 11904 KiB