Pagini recente » Cod sursa (job #2649416) | Cod sursa (job #2648053) | Cod sursa (job #1730661) | Cod sursa (job #861058) | Cod sursa (job #519797)
Cod sursa(job #519797)
#include<cstdio>
#include<deque>
#include<utility>
using namespace std;
deque<pair<int,int> > Q;
void read(),solve();
int i,n,a,maxim,k,I,J;
int main()
{
read();
solve();
return 0;
}
void read()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%d%d",&n,&k);
}
void solve()
{
for(i=1;i<=n;i++)
{
scanf("%d",&a);
if(Q.empty()){Q.push_back(make_pair(a,i));continue;}
for(;!Q.empty()&&Q.back().first>a;)Q.pop_back();
Q.push_back(make_pair(a,i));
for(;Q.front().second<(i-k+1);)Q.pop_front();
if(i>=k)if(maxim<Q.front().first){maxim=Q.front().first;I=Q.front().second;J=I+k-1;}
}
printf("%d %d %d\n",I,J,maxim);
}