Pagini recente » Cod sursa (job #2196327) | Cod sursa (job #595028) | Cod sursa (job #612442) | Rating Dumitru Angela (bombonikdulcik) | Cod sursa (job #2314911)
#include <bits/stdc++.h>
using namespace std;
ifstream in("secventa.in");
ofstream out("secventa.out");
const int N = 5e5+1;
int v[N];
deque<int> q;
int main()
{
int n,k;
ios::sync_with_stdio(0);
in.tie(0);
out.tie(0);
in >> n >> k;
for (int i = 1; i<=n; i++)
in >> v[i];
int Max = -1e9, dr = k;
for (int i = 1; i<=n; i++)
{
while (!q.empty() && v[q.back()]>=v[i])
q.pop_back();
q.push_back(i);
if (i-q.front() == k)
q.pop_front();
if (i>=k && v[q.front()]>Max)
{
Max = v[q.front()];
dr = i;
}
}
out << dr-k+1 << " " << dr << " " << Max;
}