Cod sursa(job #3172313)

Utilizator alexdmnDamian Alexandru alexdmn Data 20 noiembrie 2023 14:50:59
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>
#include <queue>
#define int long long

using namespace std;
int v[5000005];
deque <int> d;
int32_t main()
{

		ifstream cin("deque.in");
		ofstream cout("deque.out");

    int n, k, s=0;
    cin>>n>>k;

    for(int i=0;i<n;i++)
		{
			cin>>v[i];
		}

    for(int i=0;i<n;i++)
		{
			while(!d.empty() && v[i]<=v[d.back()])
				d.pop_back();
			d.push_back(i);

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

			if(i>=k-1)
				s+=v[d.front()];
		}

		cout<<s;

    return 0;
}