Pagini recente » Cod sursa (job #3178984) | Cod sursa (job #986773) | Cod sursa (job #2436117) | Cod sursa (job #293775) | Cod sursa (job #1904947)
#include <fstream>
#include <deque>
#define NMax 5000010
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n, k, v[NMax];
deque<int> D;
long long sum;
int main()
{
f >> n >> k;
for (int i = 1; i <= n; i++)
f >> v[i];
for (int i = 1; i <= n; i++) {
while (!D.empty() && v[D.back()] >= v[i])
D.pop_back();
D.push_back(i);
if (i - D.front() + 1 > k)
D.pop_front();
if (i >= k)
sum += 1LL * v[D.front()];
}
g << sum;
}