Cod sursa(job #3127028)

Utilizator HaiduculAndrei Popa Haiducul Data 7 mai 2023 09:49:30
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");

int st,dr,nr,k;
long long rez;
int main()
{   dr = -1;
    f>>nr>>k;
    vector<int> a(nr);
    vector<int> pozitie(nr);
    for(int i=0; i<nr; ++i)
    {   f>>a[i];
        while(st<=dr && a[i] <= a[pozitie[dr]])
            dr = dr-1;
        dr = dr + 1;
        pozitie[dr] = i;
        if(pozitie[st] == pozitie[dr]-k)
            st = st+1;
        if(pozitie[dr]+1 >= k)
            rez = rez + a[pozitie[st]];
    }
    g<<rez;
    f.close(); g.close();
    return 0;
}