Cod sursa(job #2337376)

Utilizator ivddabDabelea Ioana-Viviana ivddab Data 6 februarie 2019 12:25:36
Problema Secventa Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>
#include <deque>
#define NM 500006
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
int n,k,fr,bk,i,max1,pi,pj;
int d[NM],a[NM];
int main()
{
    f>>n>>k; max1=0-NM;
    fr=1; bk=0;
    for(i=1;i<=n;i++){
        f>>a[i];
        while(fr<=bk&&a[d[bk]]>=a[i]) bk--;
        d[++bk]=i;
        if(i-k==d[fr]) fr++;
        if(i>=k&&max1<a[d[fr]]){
            pi=i-k+1; pj=i;
            max1=a[d[fr]];
        }
    }
    g<<pi<<' '<<pj<<' '<<max1;
    return 0;
}