Cod sursa(job #3363200)

Utilizator CorvinJudge0Corvin Judge CorvinJudge0 Data 14 august 2026 12:39:53
Problema Secventa Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
#include <deque>
#include <queue>
using namespace std;
ifstream cin("secventa.in");
ofstream cout("secventa.out");
deque<int> dq;
short arr[500001];
int main()
{
    int n, k, minim=-100000, val1, val2;
    cin>>n>>k;
    for(int i=1; i<=n+1; i++) //cu unul in plus pentru a putea verifica ultima secventa
    {
        if(i<=n) cin>>arr[i];
        while(!dq.empty() && arr[dq.back()]>arr[i]) dq.pop_back();
        if(!dq.empty() && dq.front()<=i-k) dq.pop_front();
        if(i-k>=0 && !dq.empty() && minim<arr[dq.front()])
        {
            minim=arr[dq.front()];
            val1=i-k+1;
            val2=i;
        }
        dq.push_back(i);
    }
    cout<<val1<<" "<<val2<<" "<<minim;
}