134742025-01-08 07:56:23csdavidSípálya (55 pont)cpp17Accepted 55/55127ms11700 KiB
#include <iostream>
#include <set>
using namespace std;

struct hegy{
    long long magassag, ar;
};

int main(){
    multiset<long long> ms;
    long long mini=1000000000000000, osszeg=0;
    long long n, k, x, y, m=1000000000;
    cin >> n >> k;
    hegy a[n];
    /*for(int i=0; i<n; i++){
        cin >> a[i].magassag;
        a[i].ar=m-a[i].magassag;
        osszeg+=a[i].ar;
        m++;
        ms.insert(a[i].ar);
        if(ms.size()==k){
            x=osszeg-k*(*ms.begin());
            cout << i+1 << ":\nosszeg: " << osszeg << "\nmin: " << (*ms.begin()) << "\nk: " << k <<  "\nk*(*ms.begin())" << k*(*ms.begin()) << "\nx: " << x << "\n\n";
            if(x<mini) mini=x;
            ms.erase(ms.find(a[i-k+1].ar));
            osszeg-=a[i-k+1].ar;
        }
    }*/
    ms.clear();
    m=2000000000;
    osszeg=0;
    for(int i=0; i<n; i++){
        cin >> a[i].magassag;
        a[i].ar=m-a[i].magassag;
        osszeg+=a[i].ar;
        m--;
        ms.insert(a[i].ar);
        if(ms.size()==k){
            x=osszeg-k*(*ms.begin());
            //cout << i+1 << ":\nosszeg: " << osszeg << "\nmin: " << (*ms.begin()) << "\nk: " << k <<  "\nk*(*ms.begin())" << k*(*ms.begin()) << "\nx: " << x << "\n\n";
            if(x<mini) mini=x;
            ms.erase(ms.find(a[i-k+1].ar));
            osszeg-=a[i-k+1].ar;
        }
    }
    cout << mini;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base55/55
1Accepted0/01ms316 KiB
2Accepted0/01ms316 KiB
3Accepted2/22ms316 KiB
4Accepted2/22ms316 KiB
5Accepted2/22ms500 KiB
6Accepted2/22ms316 KiB
7Accepted3/32ms316 KiB
8Accepted1/17ms564 KiB
9Accepted1/17ms492 KiB
10Accepted1/17ms612 KiB
11Accepted1/16ms564 KiB
12Accepted1/16ms652 KiB
13Accepted1/17ms568 KiB
14Accepted2/27ms564 KiB
15Accepted2/26ms564 KiB
16Accepted2/2116ms5044 KiB
17Accepted2/2127ms9524 KiB
18Accepted2/2122ms9788 KiB
19Accepted3/3120ms11700 KiB
20Accepted2/2122ms5684 KiB
21Accepted2/2118ms5508 KiB
22Accepted2/2119ms5568 KiB
23Accepted2/2116ms5140 KiB
24Accepted2/2125ms5600 KiB
25Accepted2/2120ms5684 KiB
26Accepted2/2122ms5940 KiB
27Accepted2/2120ms6196 KiB
28Accepted3/3122ms6196 KiB
29Accepted3/3122ms6452 KiB
30Accepted3/3122ms6616 KiB