4349 2023. 03. 26 10:50:44 Erik_Gepard Sípálya (55 pont) cpp17 Elfogadva 55/55 85ms 10652 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long

int n, k;


signed main() {
	cin>>n>>k;
  vector<long long> a(n+1);
  vector<long long> s(n+1);
  map<int, int> m;
  long long eredmeny=LLONG_MAX/2;
  for(int i=1; i<=n; i++) {
    cin>>a[i];
    a[i]+=i;
    s[i]=s[i-1]+a[i];
    if(i<k) {
      m[a[i]]+=1;
    }
  }
  cout<<endl;
  for(int vege=k; vege<=n; vege++) {
    m[a[vege]]+=1;
    
    auto it=m.rbegin();
    eredmeny=min(eredmeny, (it->first)*k-(s[vege]-s[vege-k]));
    m[a[vege-k+1]]-=1;
    if(m[a[vege-k+1]]==0) {
      m.erase(a[vege-k+1]);
    }
  }
  cout<<eredmeny<<endl;
  
	return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 55/55
1 Elfogadva 0/0 3ms 1816 KiB
2 Elfogadva 0/0 3ms 2008 KiB
3 Elfogadva 2/2 3ms 2360 KiB
4 Elfogadva 2/2 3ms 2600 KiB
5 Elfogadva 2/2 3ms 2676 KiB
6 Elfogadva 2/2 3ms 2896 KiB
7 Elfogadva 3/3 3ms 3056 KiB
8 Elfogadva 1/1 8ms 3516 KiB
9 Elfogadva 1/1 8ms 3476 KiB
10 Elfogadva 1/1 8ms 3480 KiB
11 Elfogadva 1/1 6ms 3576 KiB
12 Elfogadva 1/1 6ms 3660 KiB
13 Elfogadva 1/1 6ms 3668 KiB
14 Elfogadva 2/2 6ms 3876 KiB
15 Elfogadva 2/2 6ms 3876 KiB
16 Elfogadva 2/2 79ms 9624 KiB
17 Elfogadva 2/2 79ms 9920 KiB
18 Elfogadva 2/2 78ms 9880 KiB
19 Elfogadva 3/3 79ms 10008 KiB
20 Elfogadva 2/2 82ms 10008 KiB
21 Elfogadva 2/2 78ms 9976 KiB
22 Elfogadva 2/2 79ms 10148 KiB
23 Elfogadva 2/2 82ms 10196 KiB
24 Elfogadva 2/2 85ms 10228 KiB
25 Elfogadva 2/2 82ms 10404 KiB
26 Elfogadva 2/2 82ms 10364 KiB
27 Elfogadva 2/2 79ms 10360 KiB
28 Elfogadva 3/3 79ms 10652 KiB
29 Elfogadva 3/3 79ms 10576 KiB
30 Elfogadva 3/3 82ms 10532 KiB