Cod sursa(job #1955466)

Utilizator ScarymovieMocanu Alexandru Scarymovie Data 5 aprilie 2017 23:47:45
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
#include<deque>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n,k,x,sum=0;
deque<pair<int,int> >Min;
int main()
{
    f>>n>>k>>x;Min.push_back(make_pair(x,1));
    for(int i=2;i<=n;i++)
        {
            f>>x;
            if(Min.front().second<=i-k)
                Min.pop_front();
            while(Min.back().first>x && !Min.empty())
                {
                    Min.pop_back();
                }
            Min.push_back(make_pair(x,i));
            if(i>=k) sum+=Min.front().first;
        }
    g<<sum<<endl;
    return 0;
}