Cod sursa(job #1051912)

Utilizator sorinos1357FMI Siman Marius Sorin sorinos1357 Data 10 decembrie 2013 18:05:12
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>

using namespace std;

int main(){
    ifstream f("deque.in");
    ofstream g("deque.out");
    int n,*v,*q,k,a = 0,b = -1;
    long long s = 0;
    f>>n>>k;
    v = new int[n];
    q = new int[n];
    for(int i=0;i<n;++i)
        f>>v[i];
    for(int i=0;i<n;++i){
        while(a<=b && v[i]<=v[q[b]])
            --b;
        q[++b] = i;
        if(q[a] == i-k)
            ++a;
        if(i >= k-1)
            s += v[q[a]];
    }
    g<<s;
    delete v;
    delete q;
    f.close();
    g.close();
    return 0;
}