Cod sursa(job #1123635)

Utilizator RadEmanuelRad Emanuel RadEmanuel Data 26 februarie 2014 09:26:35
Problema Heapuri Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<fstream>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int v[5000001],deq[5000001],n,k,i,start=1,stop;
long long sum;

int main()
{
    fin>>n>>k;
    for(i=1;i<=n;++i)
    {
        fin>>v[i];
        while(start<=stop && v[i]<=v[deq[stop]]) --stop;
        deq[++stop]=i;
        if(deq[start]==i-k) ++start;
        if(i>=k) sum+=v[deq[start]];
    }
    fout<<sum;
    return 0;
}