4057 | 2023. 03. 12 11:09:38 | HorakZsofi | Sípálya (55 pont) | cpp11 | Accepted 55/55 | 82ms | 10708 KiB |
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
cin>>n;
int k;
cin>>k;
vector<long long> szm(n);
vector<long long>pref(n);
long long ossz=0;
long long megold=0;
long long megoldas=0;
map<long long, int>vmi; // szám -> hány darab
for(int i=0; i<n; i++){
int a;
cin>>a;
ossz+=a+i;
pref[i]=ossz;
szm[i]=a+i;
}
for(int i=0; i<k; i++){
vmi[szm[i]] += 1;
}
auto it = vmi.end();
it--;
megoldas=(k*it->first)-pref[k-1];
for(int i=k; i<n; i++){
vmi[szm[i-k]] -= 1;
if(vmi[szm[i-k]] == 0) {
vmi.erase(szm[i-k]);
}
vmi[szm[i]]+=1;
auto it = vmi.end();
it--;
megold=(k*it->first)-pref[i]+pref[i-k];
if(megold<megoldas){
megoldas=megold;
}
}
cout<<megoldas;
}
Subtask | Sum | Test | Verdict | Time | Memory | ||
---|---|---|---|---|---|---|---|
base | 55/55 | ||||||
1 | Accepted | 0/0 | 3ms | 1808 KiB | |||
2 | Accepted | 0/0 | 3ms | 2060 KiB | |||
3 | Accepted | 2/2 | 3ms | 2292 KiB | |||
4 | Accepted | 2/2 | 3ms | 2444 KiB | |||
5 | Accepted | 2/2 | 3ms | 2532 KiB | |||
6 | Accepted | 2/2 | 3ms | 2764 KiB | |||
7 | Accepted | 3/3 | 3ms | 3108 KiB | |||
8 | Accepted | 1/1 | 8ms | 3396 KiB | |||
9 | Accepted | 1/1 | 8ms | 3720 KiB | |||
10 | Accepted | 1/1 | 8ms | 3936 KiB | |||
11 | Accepted | 1/1 | 6ms | 3748 KiB | |||
12 | Accepted | 1/1 | 6ms | 3884 KiB | |||
13 | Accepted | 1/1 | 6ms | 4244 KiB | |||
14 | Accepted | 2/2 | 6ms | 4452 KiB | |||
15 | Accepted | 2/2 | 6ms | 4392 KiB | |||
16 | Accepted | 2/2 | 78ms | 10236 KiB | |||
17 | Accepted | 2/2 | 76ms | 10184 KiB | |||
18 | Accepted | 2/2 | 76ms | 10444 KiB | |||
19 | Accepted | 3/3 | 79ms | 10420 KiB | |||
20 | Accepted | 2/2 | 81ms | 10444 KiB | |||
21 | Accepted | 2/2 | 78ms | 10348 KiB | |||
22 | Accepted | 2/2 | 78ms | 10296 KiB | |||
23 | Accepted | 2/2 | 81ms | 10548 KiB | |||
24 | Accepted | 2/2 | 82ms | 10632 KiB | |||
25 | Accepted | 2/2 | 81ms | 10572 KiB | |||
26 | Accepted | 2/2 | 82ms | 10572 KiB | |||
27 | Accepted | 2/2 | 79ms | 10568 KiB | |||
28 | Accepted | 3/3 | 79ms | 10708 KiB | |||
29 | Accepted | 3/3 | 78ms | 10632 KiB | |||
30 | Accepted | 3/3 | 82ms | 10572 KiB |