Pagini recente » Cod sursa (job #510691) | Cod sursa (job #1358462) | Cod sursa (job #2585001) | Cod sursa (job #2675291) | Cod sursa (job #3222081)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("secventa.in");
ofstream fout("secventa.out");
const int OO = (1 << 30);
deque< pair<int, int> > dq;
int main()
{
int n, k, x;
fin >> n >> k;
int i1, i2, mn;
i1 = i2 = 1;
mn = - OO;
for(int i=1; i<=n; ++i){
if(dq.size() > 0){
if(i - dq.front().second + 1 > k){
dq.pop_front();
}
}
fin >> x;
while(dq.size() > 0 && dq.back().first > x){
dq.pop_back();
}
dq.push_back(make_pair(x, i));
if(i >= k){
if(dq.front().first > mn){
mn = dq.front().first;
i1 = i - k + 1;
i2 = i;
}
}
}
fout << i1 << ' ' << i2 << ' ' << mn << '\n';
return 0;
}