Pagini recente » Cod sursa (job #144672) | Cod sursa (job #1968322) | Cod sursa (job #1166420) | Cod sursa (job #1528460) | Cod sursa (job #2391724)
#include <bits/stdc++.h>
#define Nmax 5000000
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
deque < int > DQ;
int N, K;
int A[Nmax + 5];
long long sum = 0;
int main()
{
fin >> N >> K;
for (int i = 1; i <= N; ++i)
fin >> A[i];
for (int i = 1; i <= N; ++i)
{
while (DQ.empty() == 0 && A[i] <= A[DQ.back()])
DQ.pop_back();
DQ.push_back(i);
if (DQ.front() == i - K)
DQ.pop_front();
if (i >= K)
sum += A[DQ.front()];
}
fout << sum << "\n";
return 0;
}