Cod sursa(job #3038567)

Utilizator FunZoneLutu Adrian-Catalin FunZone Data 27 martie 2023 15:44:27
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <queue>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
 
int main()
{   
    deque<pair<int, int>> doamne_ajuta;

    int n,k,x;
    long long s = 0;

    f>>n>>k;
    for(int i = 1;i<=n;i++)
    {
        f>>x;
        while(!doamne_ajuta.empty() && x < doamne_ajuta.front().first)
            {
                doamne_ajuta.pop_front();
            }
        doamne_ajuta.push_front(make_pair(x,i));

        if(i-k >= doamne_ajuta.back().second)
            {
                doamne_ajuta.pop_back();
            }
        if(i>=k)
            s+= doamne_ajuta.back().first;

    }

    g<<s;
    
    return 0;
}