Cod sursa(job #1336131)

Utilizator andreimdvMoldovan Andrei andreimdv Data 6 februarie 2015 19:01:39
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <fstream>
#include<deque>
using namespace std;

ifstream fin("deque.in");
ofstream fout("deque.out");

long long int s,n,k,i,aux;
deque<pair<long long int,int> >deq;

int main()
{
    fin>>n>>k;
    for(i=1;i<=n;++i)
    {
        fin>>aux;
        while(!deq.empty()&&deq.back().first>=aux)
        deq.pop_back();
        if(!deq.empty()&&deq.front().second<=i-k)
        deq.pop_front();
        deq.push_back(make_pair(aux,i));
        if(i>=k)
        s+=deq.front().first;
    }
    fout<<s;



    return 0;
}