Pagini recente » Cod sursa (job #2812947) | Cod sursa (job #2899457) | Cod sursa (job #2033709) | Cod sursa (job #2329285) | Cod sursa (job #3127634)
#include <iostream>
#include <fstream>
#include <vector>
int st = 0, dr = 0, v[5000001], deq[5000001];
std::ifstream in("deque.in");
std::ofstream out("deque.out");
long long int s = 0;
void print()
{
out << s;
}
int main()
{
int n, k;
in >> n >> k;
for (int i = 1; i <= n; i++)
in >> v[i];
for (int i = 1; i <= n; i++)
{
while (v[i] <= v[deq[dr]] && st <= dr)
dr--;
dr++;
deq[dr] = i;
if (k - i < 1 - deq[st])
st++;
if (i >= k)
s += v[deq[st]];
}
print();
return 0;
}