Cod sursa(job #1389651)

Utilizator razvanlgu31Razvan Lungu razvanlgu31 Data 16 martie 2015 15:05:11
Problema Secventa Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <fstream>

using namespace std;
ifstream fin("secventa.in");
ofstream fout("secventa.out");
int v[5000001],n,k,i,d[5000001],p,u,Min,pi,pf;
int main()
{
    fin>>n>>k;
    for(i=1;i<=n;i++)
        fin>>v[i];
    p=1;
    u=1;
    Min=-40000;
    for(i=1;i<=n;i++)
    {
        while(p<=u && v[i]<v[d[u]])
        u--;
        d[++u]=i;
        if(i-k==d[p])p++;
        if(i>=k && v[d[p]]>Min)
            {
                Min=v[d[p]];
                pi=i-k+1;
                pf=i;
            }
    }
    fout<<pi<<" "<<pf<<" "<<Min;
    return 0;
}