Pagini recente » Cod sursa (job #382319) | Cod sursa (job #2598715) | Cod sursa (job #1096848) | Cod sursa (job #1652081) | Cod sursa (job #344168)
Cod sursa(job #344168)
//secventa.cpp
#include <cstdio>
#define DIM 2<<18
int a[DIM],n,k,p,u,d[DIM],end,i,min;
using namespace std;
void solve()
{
p=1;
min=30000;
scanf ("%d%d\n",&n,&k);
for (i = 1; i <= n; ++i) scanf ("%d",&a[i]);
for (i = 1; i <= n; ++i)
{
while (p <= u && a[i] <= a[ d[u] ]) --u;
d[ ++u ] = i;
if (i - d[p] == k) ++p;
if (i >= k && a[ d[p] ] > min)
{
min = a[ d[p] ];
end = i;
}
}
printf ("%d %d %d\n",end-k+1,end,min);
}
int main()
{
freopen ("secventa.in","r",stdin);
freopen ("secventa.out","w",stdout);
solve();
return 0;
}
//sper sa ne mai vedem...