Cod sursa(job #2365007)

Utilizator PaulRPFRebenciuc Paul-Florin PaulRPF Data 4 martie 2019 11:44:10
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.47 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int N,a[5000002],i,K;
deque <int>Q;///memoram pozitiile
long long Sum;
int main()
{
    f>>N>>K;
    for(i=1;i<=N;i++)f>>a[i];

    for(i=1;i<=N;i++)
    {
        while(!Q.empty() and a[i]<=a[Q.back()])
            Q.pop_back();
        Q.push_back(i);
        if(Q.front()==i-K)Q.pop_front();
        if(i>=K)Sum+=a[Q.front()];
    }
    g<<Sum;
    return 0;
}