Cod sursa(job #878184)

Utilizator SchullerClaudiuSchuller Claudiu SchullerClaudiu Data 14 februarie 2013 09:00:06
Problema Secv Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream>

#define M 524288
int v[M],d[M];

using namespace std;

int main()
{
    int inf,sup,max,cp,k,n;
    max=-M;
    int i;
    ifstream f("secventa.in");
    ofstream g("secventa.out");
    f>>n>>k;
    inf=0;
    sup=-1;
    for(i=1;i<=n;i++)
    {
        f>>v[i];
        if(i-d[inf]>=k) inf++;
        while(sup>=inf&&v[d[sup]]>=v[i]) sup--;
        d[++sup]=i;
        if(i>=k&&v[d[inf]]>max)
        {
            max=v[d[inf]];
            cp=i;
        }
    }
    g<<cp-k+1<<" "<<cp<<" "<<max;
    return 0;
}