Cod sursa(job #2377830)

Utilizator StefanIonescuStefan Ionescu StefanIonescu Data 11 martie 2019 10:56:49
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>
#include <iostream>
#include <deque>
#include <vector>

using namespace std;
int main()
{
    deque <int> dq;
    vector <int> v;
    long long s=0;
    int N,K,i=0,k;
    ifstream in("deque.in");
    ofstream out("deque.out");
    in>>N>>K;
    while(i<N)
    {
        ++i;
        in>>k;
        v.push_back(k);
        while(dq.front()==i-K-1 &&dq.empty()==0)
            dq.pop_front();
        while(dq.empty()==0 && v[dq.back()]>=v[i-1])
            dq.pop_back();
        dq.push_back(i-1);
        if(i>=K)
        {
        cout<<v[dq.front()]<<" ";
        s=s+v[dq.front()];
        }
    }
    out<<s;
}