Cod sursa(job #2126115)

Utilizator stefantagaTaga Stefan stefantaga Data 9 februarie 2018 10:43:37
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>
#include <deque>
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
deque<int>c;
short int n,k,i,s,v[500001],maxim=-32000,psm,pf,ps;
int main()
{
    f>>n>>k;
    for(i=1;i<=n;i++)
        f>>v[i];
    c.push_back(1);ps=1;
    for(i=2;i<=n;i++)
    {


        while(!c.empty()&&v[c.back()]>v[i])
        {
            if(c.size()==0)break;
               else {c.pop_back();ps++;}
        }
    c.push_back(i);
    if(c.back()-c.front()>=k){c.pop_front();}
    if(i>=k)
    {

        if (v[c.front()]>maxim)
        {
            maxim=v[c.front()];
            psm=ps+1;
            pf=i;
        }
    }
    }
    g<<psm<<" "<<pf<<" "<<maxim;
    return 0;
}