Cod sursa(job #1878308)

Utilizator GeoeyMexicanuBadita George GeoeyMexicanu Data 14 februarie 2017 00:12:08
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <fstream>
#define N 5000010

using namespace std;

ifstream f("deque.in");
ofstream g("deque.out");

int i,j,n,m,k,l,a[N],deq[N];
long long sum=0;

int main()
{
    int frnt,bck;
    f>>n>>k;
    for(i=1;i<=n;i++)
        f>>a[i];
    frnt=1;
    bck=0;
    for(i=1;i<=n;i++)
    {
        while(frnt<=bck && a[i]<=a[deq[bck]])
            bck--;
        deq[++bck]=i;
        if(deq[frnt]<=i-k)
            frnt++;
        if(i>=k)
            sum=sum+a[deq[frnt]];
    }
    g<<sum;
}