Cod sursa(job #2447281)

Utilizator Ionut10Floristean Ioan Ionut10 Data 12 august 2019 18:06:35
Problema Secventa Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>
#include<deque>
#define DimMax 500005
using namespace std;

ifstream fin("secventa.in");
ofstream fout("secventa.out");

deque<int> a;
int n,k,i,v[DimMax],maxi,in,sf;
int main()
{
    fin>>n>>k; maxi = -30005;
    for(i = 1;i <= n;i++)
        fin>>v[i];
    for(i = 1;i <= n;i++)
    {
        while(!a.empty() && v[i] <= v[a.back()])
            a.pop_back();
        a.push_back(i);
        if(a.front() <= i - k)
            a.pop_front();
        if(i >= k)
        {
            if(v[a.front()] > maxi)
            {
                maxi = v[a.front()];
                in = i - k + 1;
                sf = i;
            }
        }
    }
    fout<<in<<" "<<sf<<" "<<maxi;
    return 0;
}