Pagini recente » Cod sursa (job #383551) | Cod sursa (job #546916) | Cod sursa (job #1354010) | Cod sursa (job #1405531) | Cod sursa (job #424659)
Cod sursa(job #424659)
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
int A[1000];
int d[100];
int n,k,i,back,front,max,ii,jj;
ifstream f("secventa.in");
ofstream g("secventa.out");
f >> n >> k;
for (i=1;i<=n;i++)
f >> A[i];
i = 1;
back = 1;
front = 1;
d[back] = A[1];
max = -40000;
for (i=2;i<=n;i++)
{
while ((front <=back) && (A[i] < A[d[back]]))
back--;
d[++back] = i;
if (((back -front +1) >= k)) front++;
if (A[d[front]] >= max)
{
max = A[d[front]];
ii =d[front];
jj = d[back];
}
}
g << ii <<" " << jj <<" " << max << endl;
return 0;
}