Pagini recente » Istoria paginii utilizator/boutiquequorn | Cod sursa (job #2885853) | Cod sursa (job #305424) | Cod sursa (job #453345) | Cod sursa (job #2016267)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
int a[500010],deq[500010],max1=0,i,j,n,k,frnt,bck;
int main()
{
f>>n>>k;
for(i=1;i<=n;i++)
f>>a[i];
frnt=1;
bck=0;
for(i=1;i<=n;i++)
{
while(frnt<=bck && a[i]<=a[deq[bck]]){
bck--;
}
deq[++bck]=i;
if(deq[frnt]<=i-k)
frnt++;
if(i>=k)
max1=max(max1,a[deq[frnt]]);
}
g<<deq[frnt]<<' '<<deq[bck]<<' '<<max1;
}