Pagini recente » Cod sursa (job #1303656) | Cod sursa (job #3147140) | Cod sursa (job #1583879) | Cod sursa (job #2955076) | Cod sursa (job #446475)
Cod sursa(job #446475)
#include <cstdio>
#define file_in "secventa.in"
#define file_out "secventa.out"
int n,k,v[501000],d[501000],inc,sf,baza;
void citire()
{
int i;
freopen(file_in,"r",stdin);
freopen(file_out,"w",stdout);
scanf("%d %d", &n, &k);
for (i=1;i<=n;++i)
scanf("%d", &v[i]);
}
void solve()
{
int p,u,i;
p=u=1;
for (i=1;i<=n;++i)
{
while(p<=u && d[p]<=i-k) p++;
while(p<=u && v[d[u]]>v[i]) u--;
d[++u]=i;
if (i>=k && v[d[p]]>baza)
{
baza=v[d[p]];
sf=i;
inc=i-k+1;
}
}
printf("%d %d %d", inc,sf,baza);
}
int main()
{
citire();
solve();
fclose(stdin);
fclose(stdout);
return 0;
}