Cod sursa(job #2729572)

Utilizator Virgil993Virgil Turcu Virgil993 Data 24 martie 2021 21:50:28
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include<fstream>

using namespace std;


long long deq[5000001],v[5000001];

int main()
{

    ifstream in;
    in.open("deque.in");
    ofstream out;
    out.open("deque.out");
    long long n,k,start = 1,sfarsit = 0,suma = 0;
    in>>n;
    in>>k;
    for(int i= 0;i<n;i++)
        in>>v[i];
    for(int i=0;i<n;i++)
    {
        while(start <= sfarsit && v[i]<=v[deq[sfarsit]])
            sfarsit--;
        sfarsit++;
        deq[sfarsit] = i;
        if(deq[start] < i-k+1)
            start++;
        if(i>=k-1)
        suma = suma + v[deq[start]];
   //     cout<<suma<<endl;


    }

    out<<suma;

    return 0;
}