Cod sursa(job #1507052)

Utilizator codi22FMI Condrea Florin codi22 Data 21 octombrie 2015 11:44:32
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <cstdio>
using namespace std;
#include <deque>
long long n,a,i,l,x,k,j,mn,p;
int main()
{
    deque <long long> a,b;
    freopen("secventa.in","r",stdin);
    freopen("secventa.out","w",stdout);
    cin>>n>>k;
    cin>>x;
    a.push_back(-31000);
    b.push_back(-500001);
    a.push_back(x);
    b.push_back(0);
    l=1;
    for (i=1;i<n;i++)
    {
        cin>>x;
        if (l>0)
            while (x<=a[l]&&i-b[l]<k)
            {
                a.pop_back();
                b.pop_back();
                l--;
            }
        a.push_back(x);
        b.push_back(i);
        l++;

    }
    for (i=1;i<=l;i++)
    {
        if (b[i]<=n-k)
            if (a[i]>mn)
            {
                mn=a[i];
                p=b[i];
            }
    }
    cout<<p+1<<" "<<p+k<<" "<<mn;
}