Pagini recente » Cod sursa (job #724447) | Cod sursa (job #1578) | Cod sursa (job #222460) | Cod sursa (job #2109676) | Cod sursa (job #1257161)
#include<cstdio>
#include<queue>
using namespace std;
deque<int> v,q;
int n,k,i,j,x,l1,l2,mini;
int main ()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++)
{
scanf("%d",&x);
if(!q.empty()&&q.front()+k<=i)
{
v.pop_front();
q.pop_front();
}
v.push_back(x);
q.push_back(i);
x=v.back();
v.pop_back();
q.pop_back();
while(!v.empty()&&x<v.back())
{
x=v.back();
v.pop_back();
q.pop_back();
}
v.push_back(x);
q.push_back(i);
if(i>=k)
{
int o=v.front();
if(o>mini)
{
l1=i-k+1;
l2=i;
mini=o;
}
}
}
printf("%d %d %d",l1,l2,mini);
return 0;
}