Cod sursa(job #2403194)

Utilizator VladTZYVlad Tiganila VladTZY Data 11 aprilie 2019 12:46:03
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.8 kb
#include <fstream>
#include <deque>

using namespace std;

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

long long n,k,i,x,sum,j;
int a[5000020];

deque < int > v;


int main()
{
    f>>n>>k;
    for(i=1;i<=k;i++)
    {
        f>>a[i];
        while(!v.empty()&&a[v.back()]>=a[i])
            v.pop_back();
        v.push_back(i);
    }
    /*for(i=0;i<v.size();i++)
        g<<a[v[i]]<<" ";
    g<<"\n";*/
    sum+=a[v.front()];
    for(i=k+1;i<=n;i++)
    {
        f>>a[i];
        while(!v.empty()&&a[v.back()]>=a[i])
            v.pop_back();
        v.push_back(i);
        while(!v.empty()&& i-v.front()+1>k)
            v.pop_front();
        /*for(j=0;j<v.size();j++)
            g<<a[v[j]]<<" ";
        g<<"\n";*/
        sum+=a[v.front()];
    }
    g<<sum;
}