Cod sursa(job #446950)

Utilizator marta_diannaFII Filimon Marta Diana marta_dianna Data 26 aprilie 2010 23:07:27
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream.h>

long i, n, p, u, max, deque[500001], k, pmax;
int a[500001];

int main()

{
	ifstream f("secventa.in");
	ofstream g("secventa.out");
	
	f>>n>>k;
	for (i=1;i<=n;i++) f>>a[i];
	
	deque[1]=1;u=1;p=1;max=-32000;pmax=-1;
	for(i=2;i<=n;i++)
	{
		while (a[deque[u]]>=a[i] && u>p) u--;
		if (a[deque[u]]<a[i])u++;
		deque[u]=i;
		if (i-k==deque[p]) p++;
		if (i-k>-1) 
			if (a[deque[p]]>max) 
			{
				max=a[deque[p]];
				pmax=deque[p];
			}
	}
	
	g<<pmax<<" "<<pmax+k-1<<" "<<max<<"\n";
	f.close();
	g.close();
}