Cod sursa(job #1040235)

Utilizator BlackLordFMI Alex Oprea BlackLord Data 24 noiembrie 2013 11:14:00
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>
#include <deque>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n, k, v[5000010], i;
long long s;
deque<int> d;

int main(){
    f>>n>>k;
    for(i=1; i<=n; i++)
        f>>v[i];
    for(i=1; i<=n; i++)
    {
        while(!d.empty() && v[ d.back() ]>=v[i])
            d.pop_back();
        d.push_back(i);
        if(d.back()-d.front()==k)
            d.pop_front();
        if(i>=k)
            s+=v[d.front()];
    }
    g<<s<<"\n";
    return 0;
}