Cod sursa(job #2885851)

Utilizator ralucarRogoza Raluca ralucar Data 6 aprilie 2022 17:45:16
Problema Deque Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n, k, v[5000000], x, minim, nr=0;
long long suma;
deque <int> d;
int main()
{
    f>>n>>k;
    for(int i=0; i<n; i++)
        f>>v[i];
    for(int i=0; i<n; i++)
    {
        if(i!=0 && nr==0) i--;
        while(!d.empty() && v[i]<=d.front())
            d.pop_front();
        if(d.empty() || v[i]<d.front())
            d.push_back(v[i]);
        nr++;
        if(nr==k)
        {
            nr=0;
            suma=suma+d.front();
            i=i-k+2;
            d.pop_front();
        }
    }
    g<<suma;
    f.close();
    g.close();
    return 0;
}