Pagini recente » Cod sursa (job #1579668) | Cod sursa (job #750148) | Cod sursa (job #674084) | Cod sursa (job #3289788) | Cod sursa (job #1493958)
#include <fstream>
#define MAX 5000001
using namespace std;
int n, k, a[MAX], deque[MAX];
int top, bot;
long long s;
int main()
{
ifstream f("deque.in");
ofstream g("deque.out");
f>>n>>k;
for (int i=1; i<=n; ++i)
f>>a[i];
top=1;
bot=0;
for (int i=1; i<=n; ++i)
{
while (top <= bot && a[i]<=a[ deque[bot] ])
bot--;
deque[++bot] = i;
if (deque[top] == i-k)
top++;
if (i >= k)
s += a[ deque[top]];
}
g<<s;
return 0;
}