Pagini recente » Cod sursa (job #1969396) | Cod sursa (job #112411) | Cod sursa (job #3133559) | Cod sursa (job #2047782) | Cod sursa (job #1148121)
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
int numere[5000001];
int main()
{
ifstream intrare("deque.in");
ofstream iesire("deque.out");
int n,i,k;
long long suma=0;
deque<int> coada;
intrare>>n;
intrare>>k;
for (i=1;i<=n;i++)
{
intrare>>numere[i];
while (!coada.empty()&&numere[coada.back()]>numere[i]){coada.pop_back();}
coada.push_back(i);
if(i-coada.front()==k) coada.pop_front();
if(i>=k) suma=suma+numere[coada.front()];
}
iesire<<suma<<"\n";
}