Pagini recente » Cod sursa (job #1308858) | Cod sursa (job #2709661) | Cod sursa (job #2043042) | Cod sursa (job #480854) | Cod sursa (job #446950)
Cod sursa(job #446950)
#include<fstream.h>
long i, n, p, u, max, deque[500001], k, pmax;
int a[500001];
int main()
{
ifstream f("secventa.in");
ofstream g("secventa.out");
f>>n>>k;
for (i=1;i<=n;i++) f>>a[i];
deque[1]=1;u=1;p=1;max=-32000;pmax=-1;
for(i=2;i<=n;i++)
{
while (a[deque[u]]>=a[i] && u>p) u--;
if (a[deque[u]]<a[i])u++;
deque[u]=i;
if (i-k==deque[p]) p++;
if (i-k>-1)
if (a[deque[p]]>max)
{
max=a[deque[p]];
pmax=deque[p];
}
}
g<<pmax<<" "<<pmax+k-1<<" "<<max<<"\n";
f.close();
g.close();
}