Pagini recente » Cod sursa (job #1762830) | Cod sursa (job #1878437) | Cod sursa (job #2785696) | Cod sursa (job #1405484) | Cod sursa (job #3315152)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("secventa.in");
ofstream fout("secventa.out");
vector<int> v(500001);
deque<int> d;
int main()
{
int n, k, maxi=-9223372036854775808, ansj, ansi;
fin>>n>>k;
for(int i=1;i<=n;i++) {
fin>>v[i];
}
for(int i=1;i<=n;i++) {
while(!d.empty() && v[d.back()] > v[i]) {
d.pop_back();
}
d.push_back(i);
while(!d.empty() && d.front() <= i-k) {
d.pop_front();
}
if(i >= k && maxi < v[d.front()]) {
ansj=i-k+1;
ansi=i;
maxi=v[d.front()];
}
}
fout<<ansj<< " " <<ansi<< " " <<maxi;
return 0;
}