Pagini recente » Borderou de evaluare (job #2016071) | Cod sursa (job #3279304) | Cod sursa (job #1564986) | Cod sursa (job #506910) | Cod sursa (job #2731403)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("deque.in");
ofstream out("deque.out");
int sir_numere[5000001], deq[5000001];
int main()
{int N, i, K, st=1, dr=0, suma=0;
in >> N >> K;
for(i = 1; i <= N; i++)
in >> sir_numere[i];
for(i = 1; i <= N; i++)
{
while (st <= dr && sir_numere[i] <= sir_numere[deq[dr]])
dr--;
deq[++dr] = i;
if (deq[st] == i-K) st++;
if (i >= K)
suma += sir_numere[deq[st]];
}
out << suma;
return 0;
}