Cod sursa(job #2730295)

Utilizator SteFUNGrigorescu Stefan Dumitru SteFUN Data 26 martie 2021 00:21:42
Problema Deque Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <iostream>
#include <fstream>

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

#define cout_std std::cout
#define cin_std std::cin

int v[5000000];  // <-- deque

int main()
{
	int n, k, minim = 10000001, poz=-1;
	f >> n >> k;
	for (int i = 0; i < k; i++)
	{
		f >> v[i];
		if (v[i] <= minim)
		{
			minim = v[i];
			poz = i;
		}
	}
	int st = 0, suma = minim;
	for (int dr = k; dr < n; dr++)
	{
		f >> v[dr];
		st++;
		if (v[dr] <= minim)
		{
			minim = v[dr];
			poz = dr;
		}
		else if (st > poz)
		{
			int staux = st;
			while (staux < dr and v[dr] <= v[staux])
				staux++;
			minim = v[staux];
			poz = staux;
		}
		suma += minim;
	}
	g << suma;
	return 0;
}