Pagini recente » Cod sursa (job #1361320) | Cod sursa (job #2251671) | Cod sursa (job #2158434) | Cod sursa (job #63075) | Cod sursa (job #3145004)
#include <bits/stdc++.h>
using namespace std;
int main() {
freopen("secventa.in", "r", stdin);
freopen("secventa.out", "w", stdout);
std::ios_base::sync_with_stdio (false);
int n, k;
cin >> n >> k;
vector<int> v(n);
for(int i = 0;i < n;++i)
cin >> v[i];
deque<int> q;
int maxim = INT_MIN, pos = k - 1;
for(int i = 0;i < n;++i)
{
while(!q.empty() && v[i] <= v[q.back()])
q.pop_back();
if(!q.empty() && i - q.front() >= k)
q.pop_front();
q.push_back(i);
if(v[q.front()] > maxim && i >= k - 1)
{
maxim = v[q.front()];
pos = i;
}
}
cout << pos - k + 2 << " " << pos + 1 << " " << maxim << "\n";
}