Pagini recente » Cod sursa (job #632649) | Cod sursa (job #1571887) | Cod sursa (job #2690956) | Cod sursa (job #3205056) | Cod sursa (job #2201472)
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
bool OK=0;
long N,K,element,in,baza=-30001,start;
deque < long > Min,Poz;
int main()
{
f>>N>>K;
for(int i=1;i<=N;i++)
{
f>>element;
if(Poz.front()+K==i)
{
Min.pop_front();
Poz.pop_front(); OK=1;
}
while(!Min.empty()&&element<Min.back())
{ Min.pop_back(); Poz.pop_back(); }
Min.push_back(element);
Poz.push_back(i);
if(i>=K)
{
if(Min.front()>baza)
{
baza=Min.front();
if(OK==0)
start=Poz.front()-K+1;
else
{
start=Poz.front();
OK=0;
}
}
}
}
g<<start<<" "<<start+K-1<<" "<<baza;
return 0;
}