Cod sursa(job #393595)

Utilizator ghedany92Gheorghita Daniel ghedany92 Data 9 februarie 2010 18:26:37
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include<fstream.h>
ifstream fin("deque.in");
ofstream fout("deque.out");
long a[5000001],c[5000001],n,m,inc,sf,i;
long long s;
int main()
{
	fin>>n>>m;
	inc=1;sf=0;
	for (i=1;i<=n;i++)
		fin>>a[i];
	for (i=1;i<=n;i++)
	{
		while (inc<=sf && a[i]<=a[c[sf]]) sf--;
		sf++;
		c[sf]=i;
		if (c[inc]==i-m) inc++;
		if (i>=m) s+=a[c[inc]];
	}
fout<<s;
fout.close();
return 0;
}