Cod sursa(job #2701905)

Utilizator VladPislaruPislaru Vlad Rares VladPislaru Data 2 februarie 2021 09:45:42
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <bits/stdc++.h>

using namespace std;
int a[100];
deque <int> q;
int main()
{
    int i , n , k, x, m, p;
    cin >> n >> k;
    for (i = 1;i <= n;i++)
        cin >> a[i];
    for (i = 1;i <= k;i++)
    {
        x = a[i];
        while (!q.empty() && x <= a[q.back()])
            q.pop_back ();
        q.push_back(i);
    }
    m = a[q.front()];
    p = i;
    for (i = k + 1;i <= n;i++)
    {
        x = a[i];
        while (!q.empty() && x <= a[q.back()])
            q.pop_back();
        q.push_back(i);
        if (i - k == q.front()) q.pop_front();
            if (m < q.front())
            {
                p = i;
                m = a[q.front()];
            }
    }
    cout << p - k + 1 << " " << p << " " << m;
    return 0;
}