Cod sursa(job #3000066)

Utilizator rutakateIvanovici Vlad rutakate Data 11 martie 2023 21:36:37
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.81 kb
#include <stdio.h>
#include <iostream>
#include <deque>
#include <fstream>

#define maxn 5000010

using namespace std;

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

int n, k, suma, contor = 0, stanga = 0, dreapta = 0;
int sir[maxn];
long long Sum;

int main()
{
    fin >> n >> k;
    int deq[k];
    for(int i = 1; i <= n; ++i) {
        fin >> sir[i];
    }
    //cout << deq[0];
    for(int i = 1; i <= n; ++i) {
        while(dreapta >= stanga && sir[i] <= sir[deq[dreapta]]) {
            dreapta--;
        }
        dreapta++;
        deq[dreapta] = i;
        if(deq[stanga] == i - k) {
            stanga++;
        }
        if(i >= k) {
            suma += sir[deq[stanga]];
        }
        fout << sir[deq[stanga]] << endl;
    }
    fout << suma;
	return 0;
}