Pagini recente » Cod sursa (job #2299590) | Cod sursa (job #1311180) | Cod sursa (job #1088189) | Cod sursa (job #1173775) | Cod sursa (job #2502826)
#include <fstream>
#include <iostream>
#include <deque>
std::ifstream fin("deque.in");
std::ofstream fout("deque.out");
std::deque<std::pair<long long,long long>> A;
long long N, K, X, count = 1, poz=1;
long long S;
int main()
{
fin >> N >> K;
for (long long i = 1; i <= N; i++) {
fin >> X;
if (!A.empty() and i - K == A.front().second)
A.pop_front();
while (!A.empty() and X <= A.back().first)
A.pop_back();
A.push_back(std::make_pair(X,i));
if (i >= K)
S += A.front().first;
}
fout << S;
}