Cod sursa(job #2117307)

Utilizator AndaionicaIonica Anda Maria Andaionica Data 28 ianuarie 2018 19:32:54
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <fstream>
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
int n,k,st,dr,Max,poz1,poz2,i,a[500001],v[500001];
int main()
{
    f>>n>>k;
    st=1;dr=0;Max=-30000;
    for(i=1;i<=n;i++){
        f>>a[i];
        while(st<=dr&&a[i]<=a[v[dr]])
            dr--;
        dr++;
        v[dr]=i;
        if(st<=dr&&v[st]==i-k)
            st++;
        if(i>=k&&Max<a[v[st]]){
            Max=a[v[st]];
            poz1=v[st];
            poz2=i;
        }
    }
    g<<poz1<<" "<<poz2<<" "<<Max;
    return 0;
}