Cod sursa(job #3355626)

Utilizator Alias47John Doe Alias47 Data 24 mai 2026 09:50:51
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
//#include "header.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define ft(n) for(ll i=1; i<=n; i++)

string file = "deque";
ifstream f(file + ".in");
ofstream g(file + ".out");


deque<ll> d, pos;
vector<ll> mins;



int main()
{
	ll n, k, x, s=0;
	f >> n >> k;
	mins.resize(n + 5);
	ft(n)
	{
		f >> x;
		while (d.size() && x <= d.back())
			d.pop_back(), pos.pop_back();
		d.push_back(x), pos.push_back(i);
		if (pos.front() <= i - k) d.pop_front(), pos.pop_front();
		mins[i] = d.front();
	}
	for (ll i = k; i <= n; i++)
		s += mins[i];
	g << s;
	return 0;
}