Cod sursa(job #3278249)

Utilizator amaliasasuAmalia Sasu amaliasasu Data 18 februarie 2025 20:46:37
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#include <deque>
#include <algorithm>
#include <cmath>
using namespace std;

ifstream fin("vila2.in");
ofstream fout("vila2.out");

const int DIM = 1e5 + 1;
int n, k;
int a[DIM];

int main()
{
    deque<int> minQ;
    deque<int> maxQ;

    fin >> n >> k;
    long long sum = 0;

    for(int i = 1; i <= n; ++i)
    {
        fin >> a[i];

        while(!minQ.empty() && a[minQ.back()] >= a[i])
            minQ.pop_back();
        minQ.push_back(i);

        if(i - minQ.front() == k)
            minQ.pop_front();

       if(i >= k)
        sum += 1LL * a[minQ.front()];
    }

    fout << sum;
}