Cod sursa(job #1873464)

Utilizator Rocamadour1497Alexandru Martiniuc Rocamadour1497 Data 9 februarie 2017 04:23:48
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int main()
{
	int n, i, j, k, a[5000005], deque[5000005];
	f >> n >> k;
	for (i = 1; i <= n; i++) f>> a[i];
	int st = 1, dr = 0;
	long long sum = 0;
	for (i = 1; i <= n; i++)
	{
		while (st <= dr && a[i] <= a[deque[dr]])
			dr--;
		deque[++dr] = i;
		if (deque[st] == i - k) st++;
		if (i - k>=0)
		{
			sum += a[deque[st]];
		}
	}
	g << sum;
}