Pagini recente » Cod sursa (job #1743515) | Cod sursa (job #312894) | Cod sursa (job #1930535) | Cod sursa (job #1142127) | Cod sursa (job #2887169)
#include<fstream>
using namespace std;
int v[5000005];
int deque[5000005];
int front=0, back=0;
int main() {
ifstream fin("deque.in");
ofstream fout("deque.out");
int n,k;
fin>>n>>k;
long long solutie=0;
for(int i=0;i<k-1;i++){
fin>>v[i];
while(back>=front && v[i]<=v[deque[back]]){
back--;
}
back++;
deque[back]=i;
}
for(int i=k-1;i<n;i++){
fin>>v[i];
while(back>=front && v[i]<=v[deque[back]]){
back--;
}
back++;
deque[back]=i;
solutie+=v[deque[front]];
if(deque[front]==i-k+1){
front++;
}
}
fout<<solutie;
fout.close();
fin.close();
return 0;
}