Cod sursa(job #464546)

Utilizator andunhillMacarescu Sebastian andunhill Data 20 iunie 2010 17:51:26
Problema Secventa Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<fstream>
#include<deque>
using namespace std;
ifstream f("secventa.in") ; ofstream g("secventa.out");
int v[500001],sol;
int i,n,k,b,e;
deque<int>vmin;
int main()
{	f>>n>>k;
	sol=-31000;
	for(i=1;i<=n;i++)
	{	f>>v[i];
		while(!vmin.empty() && v[vmin.back()]>v[i])
			vmin.pop_back();
		vmin.push_back(i);
		if(i>=k&&sol<v[vmin.front()]) 
			e=i,b=i-k+1 , sol=v[vmin.front()];
		if(vmin.front()<=i-k+1)
			vmin.pop_front();
	}
			
	g<<b<<" "<<e<<" "<<sol;
	f.close();
	g.close();
	return 0;
}