Cod sursa(job #3128401)

Utilizator sara_ionescu21Ionescu Sara sara_ionescu21 Data 9 mai 2023 14:54:30
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int v1[5000001], v2[5000001];

int main()
{
    int n, k;
    long int suma = 0;
    int start = 0, final = 0;

    fin >> n >> k;

    for (int i = 0; i < n; i++)
		fin >> v1[i];

    for (int i = 0; i < n; i++)
    {
		while (start < final && v1[v2[final - 1]] > v1[i])
			final--;

		v2[final++] = i;

        if (i >= k - 1)
        {
			while (v2[start] <= i - k)
				start++;
			suma += v1[v2[start]];
		}
	}

    fout << suma << endl;
    

    fin.close();
    fout.close();

    return 0;
}