Pagini recente » Cod sursa (job #211222) | Cod sursa (job #957828) | Cod sursa (job #2946241) | Cod sursa (job #747479) | Cod sursa (job #2658911)
#include <cstdio>
#include <deque>
#define nMax 501024
using namespace std;
struct Nr {
int pos,val;
};
int main() {
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
int i,newVal,sol,solpos;
int n,k;
deque <Nr> q;
scanf("%d%d",&n,&k);
for(sol=-32768,solpos=0,i=1;i<=n;++i) {
scanf("%d",&newVal);
if(!q.empty()&&i-q.front().pos>=k) {
q.pop_front();
}
for(;!q.empty()&&q.back().val>newVal;q.pop_back());
q.push_back({i,newVal});
if(i>=k&&q.front().val>sol) {
sol=q.front().val;
solpos=i;
}
}
printf("%d %d %d",solpos-k+1,solpos,sol);
return 0;
}