Cod sursa(job #3250479)

Utilizator MilitaruMihai2022Millitaru Mihai MilitaruMihai2022 Data 21 octombrie 2024 11:21:15
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <bits/stdc++.h>

using namespace std;

const int NMAX=5000010;

int n,k,vec[NMAX];
long long sum;
deque <int> d;

ifstream f("deque.in");
ofstream g("deque.out");

int main()
{
    f>>n>>k;
    for(int i=1;i<=n;i++)
        f>>vec[i];
    for (int i = 1; i <= n; i++)
	{
		while (!d.empty() && vec[i] <= vec[ d.back()])
            d.pop_back();
		d.push_back(i);

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

		if (i >= k)
            sum += vec[ d.front()];
	}
    g<<sum;
    return 0;
}