Cod sursa(job #2728261)

Utilizator andre.anghelacheAndreea Anghelache andre.anghelache Data 22 martie 2021 23:03:36
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>
using namespace std;

int A[5000001], mydeque[5000001];


int main() {

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

    int N, K, x, suma=0, inc=1, sf=0;

    in>>N>>K;

    for(int i=1; i<N+1; i++)
    {
        in>>x;
        A[i]=x;
    }

    for(int i=1; i<N+1; i++)
    {
        while(inc<=sf && A[i]<=A[mydeque[sf]])
            sf--;
        mydeque[++sf]=i;

        if(mydeque[inc]==i-K)
            inc++;

        if(i>=K)
            suma+=A[mydeque[inc]];
    }

    out<<suma;
    in.close();
    out.close();
    return 0;
}