Cod sursa(job #744461)

Utilizator MagnvsDaniel Constantin Anghel Magnvs Data 8 mai 2012 19:25:20
Problema Secventa Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
#include <fstream>

using namespace std;

int q[500001],v[500001],k,n;

int main()
{
    int l=1,r=0,i,sol=-30001,x;
    ifstream in("secventa.in");
    ofstream out("secventa.out");
    in>>n>>k;
    for (i=1;i<=n;++i)
        in>>v[i];
    for (i=1;i<=n;++i)
    {
        while (v[q[r]]>=v[i]&&r>=l) --r;
        q[++r]=i;
        if (q[l]==i-k) ++l;
        if ((i>=k)&&(v[q[l]]>sol)) sol=v[q[l]],x=i;
    }
    out<<x-k+1<<" "<<x<<" "<<sol;
    return 0;
}