Pagini recente » Cod sursa (job #735049) | Ajuta-ne sa gasim sponsori | Cod sursa (job #3198630) | Cod sursa (job #17158) | Cod sursa (job #1775742)
#include <cstdio>
#include <deque>
using namespace std;
int v[500001];
deque<int> q;
int max_base = -99999;
int main()
{
int i, k, n, x, l, r;
freopen("secventa.in", "r", stdin);
freopen("secventa.out", "w", stdout);
scanf("%d%d", &n, &k);
for(i = 1; i <= n; ++i){
scanf("%d", &v[i]);
while(!q.empty() && v[q.back()] >= v[i]){
q.pop_back();
}
q.push_back(i);
while(q.front() == i-k){
q.pop_front();
}
if(i >= k){
if(v[q.front()] > max_base){
max_base = v[q.front()];
l = i - k + 1;
r = i;
}
}
}
printf("%d %d %d", l, r, max_base);
return 0;
}