Cod sursa(job #900561)

Utilizator mciprianmosincat ciprian mciprian Data 28 februarie 2013 20:27:09
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <iostream>
#include <fstream>
#include <deque>

using namespace std;
    deque <int>d;
    int n,i,k,a[5000001];
    long long s;

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

int main()
{


    f>>n>>k;s=0;

    for(i=1;i<=n;i++)
        {
            f>>a[i];
            while (!d.empty()&&d.back()>a[i]) d.pop_back();
            d.push_back(a[i]);
            if (i>k&&d.front()==a[i-k]) d.pop_front();
            if (i>=k)s+=d.front();
        }

    g<<s;
    return 0;
}