Cod sursa(job #1893585)

Utilizator patrutoiuandreipatrutoiu andrei patrutoiuandrei Data 25 februarie 2017 19:57:15
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>

using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int DQ[5000001],V[5000001];
int main()
{
    int n,t,i,st,dr,x;
    long long sol = 0;
    fin>>n>>t;
    st = 1;
    dr = 0;
    for(i=1;i<=n;i++)
    {
        fin>>V[i];
        if(DQ[dr]-DQ[st]+1 == t)
            st++;
        while(V[i]<V[DQ[dr]] && dr>=st)
            dr--;
        DQ[++dr] = i;
        if(i>=t)
            sol+=V[DQ[st]];
    }
    fout<<sol;
    return 0;
}