Pagini recente » Cod sursa (job #2934915) | Cod sursa (job #2830213) | Cod sursa (job #1364532) | Cod sursa (job #1414295) | Cod sursa (job #2915825)
#include <fstream>
#include <vector>
#include <deque>
using namespace std;
ifstream cin("secventa.in");
ofstream cout("secventa.out");
int n,k;
vector<int> v;
deque<int> dq;
void read() {
cin>>n>>k;
v.resize(n+1);
for(int i=1;i<=n;i++) {
cin>>v[i];
}
}
void solve() {
int i=1;
int res=0;
dq.push_back(1);
int resS,resE;
while(i<=n) {
while(!dq.empty() && v[dq.back()]>v[i]) {
dq.pop_back();
}
if(i-dq.front()>=k and !dq.empty()) dq.pop_front();
dq.push_back(i);
if(i>=k)
if(res<v[dq.front()]) {
res=v[dq.front()];
resS=i;
}
i++;
}
cout<<resS-k+1<<" "<<resS<<" "<<res;
}
int main() {
read();
solve();
return 0;
}