Cod sursa(job #997360)

Utilizator Adrian1997Radulescu Adrian Adrian1997 Data 13 septembrie 2013 21:40:34
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include <fstream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n,k,v[5000010],deq[5000010];

int main(void){
    register int i,j,p,u;

    f>>n>>k;
    f>>v[1];
    deq[1]=1,p=u=1;
    long long s=0;
    for(i=2;i<=n;i++){
        f>>v[i];
        while(u>=p && v[i]<=v[deq[u]])
            u--;
        deq[++u]=i;
        if(deq[u]-deq[p]==k)
            p++;
        if(i>=k)
            s+=v[deq[p]];
    }

    g<<s;
    return 0;
}