Cod sursa(job #1971453)

Utilizator LizaSzabo Liza Liza Data 20 aprilie 2017 14:06:56
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.05 kb
#include <iostream>
#include <fstream>
#include <limits>
using namespace std;
ifstream f1("secventa.in");
ofstream f2("secventa.out");
const int NMax=500005;
int x[NMax],n,i,k,l=1,V[NMax],MIN,MAX,K;

void cit(){
    f1>>n>>K;
    for(i=1;i<=n;i++){f1>>x[i];}
}



 void rez(){
    MIN=numeric_limits<int>::max() ;
      MAX=numeric_limits<int>::min() ;
    for(i=1;i<=n;i++)
    {
        if(i<=K)
        {
            MIN=min(MIN,x[i]);
        }
        else
        {
            if(MIN==x[l])
            {
                MIN=numeric_limits<int>::max() ;
               for(int j=l+1;j<=i;++j)
               {
                   MIN=min(MIN,x[j]);
               }

            }
            V[i]=MIN;
            ++l;

        }
    }
    for(int i=K;i<=n;++i)
    {
        MAX=max(V[i],MAX);
        if(MAX==V[i])
        {
            k=i;
        }
    }
    l=k-K+1;
    while(V[l]>=MAX)
    {
        l--;
    }
    f2<<l<<' '<<k<<' '<<MAX<<'\n';

 }



int main()
{
cit();
rez();

    return 0;
}