Cod sursa(job #2578789)

Utilizator corvinus2003Corvin Ghita corvinus2003 Data 11 martie 2020 16:22:50
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>
#include <deque>

using namespace std;

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

const int LMAX = 5e6 + 10;
int v[LMAX];

deque <long long> d;

int main()
{
	long long n, k, ans = 0;
	cin >> n >> k;
	for (long long i = 1; i <= n; ++i)
	{
		cin >> v[i];
		if (i >= k && d.back() == i - k)
			d.pop_back();
		while (!d.empty() && v[i] <= v[d.front()])
			d.pop_front();
		d.push_front(i);
		if (i >= k)
			ans = ans + v[d.back()];
	}
	cout << ans;
	return 0;
}