Pagini recente » Cod sursa (job #1415131) | Cod sursa (job #2725397) | Cod sursa (job #965542) | Cod sursa (job #2866486) | Cod sursa (job #2888038)
//Ilie Dmitru
#include<fstream>
typedef long long int ll;
const int NMAX=500005;
const ll MOD=194767;
std::ifstream f("secventa.in");
std::ofstream g("secventa.out");
int baza[NMAX], index[NMAX], start=0, end=-1;
int main()
{
int N, K, i, x, maxB=-30005, pos;
f>>N>>K;
for(i=0;i<K;++i)
{
f>>x;
while(end>start && baza[end]>=x)
--end;
baza[++end]=x;
index[end]=i;
}
pos=K-1;
for(;i<N;++i)
{
f>>x;
while(end>start && baza[end]>=x)
--end;
baza[++end]=x;
index[end]=i;
start+=(index[start]==i-K);
if(baza[start]>maxB)
maxB=baza[start], pos=i;
}
g<<pos-K+2<<' '<<pos+1<<' '<<maxB;
f.close();
g.close();
return 0;
}