Pagini recente » Cod sursa (job #602541) | Cod sursa (job #1037990) | Cod sursa (job #520312) | Cod sursa (job #1123558) | Cod sursa (job #3170540)
#include <iostream>
#include<fstream>
using namespace std;
int sir[5000002] ;
int doustack[5000002];
int main(){
ifstream cin("deque.in");
ofstream cout("deque.out");
int nr,spatiu,fata=1,spate=0;
long long suma=0;
cin>>nr>>spatiu;
for (int i=1;i<=nr;i++){
cin>>sir[i];
}
for (int i=1;i<=nr;i++){
while (fata<=spate&&sir[i]<sir[doustack[spate]]){
spate--;
}
spate++;
doustack[spate]=i;
if (doustack[fata]==i-spatiu){
fata++;
}
if (i>=spatiu){
suma+=sir[doustack[fata]];
}
}
cout<<suma;
return 0;
}