Pagini recente » Cod sursa (job #88853) | Cod sursa (job #302849) | Cod sursa (job #2813745) | Cod sursa (job #236428) | Cod sursa (job #829531)
Cod sursa(job #829531)
#include<stdio.h>
#include<iostream>
#include<stdlib.h>
#include<deque>
using namespace std;
#define maxn 500001
int a[maxn];
int main()
{
freopen("secventa.in", "r", stdin);
freopen("secventa.out", "w", stdout);
int n, k, i,ind1,ind2, max=-30000;
scanf("%d %d", &n, &k);
deque<int> v;
for( int i = 1; i<= n; ++i)
{
scanf("%d", &a[i]);
while((v.size() > 0) and (a[v.back()] >= a[i]))
v.pop_back();
v.push_back(i);
if( v.front() == i - k)
v.pop_front();
if( i >= k)
if (max<a[v.front()])
{
max=a[v.front()];
ind1=v.front();
ind2=v.back();
}
}
printf("%d %d %d",ind1, ind2, max);;
return 0;
}