Cod sursa(job #914636)

Utilizator BodiIgna Bogdan Bodi Data 14 martie 2013 12:26:02
Problema Deque Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <iostream>
#include <fstream>
using namespace std;
long long a[5000001],d[5000001];
int n,k,b=0,f,s,i;
int main()
{
    ifstream fin("deque.in");
    ofstream fout("deque.out");
    fin>>n>>k;
    for(i=1;i<=n;i++)fin>>a[i];
    f=1;
    for(i=1;i<=n;i++)
    {
        while((f<=b)&&(a[i]<=a[d[b]]))b--;
        b++;
        d[b]=i;
        if(d[f]==i-k)f++;
        if(i>=k)s+=a[d[f]];
    }
   // for(i=1;i<=f;i++)s+=a[d[i]];
    fout<<s;
    fin.close();
    fout.close();
    return 0;
}