Pagini recente » Cod sursa (job #815670) | Cod sursa (job #1543204) | Cod sursa (job #1738960) | Cod sursa (job #2524428) | Cod sursa (job #3003076)
#include<bits/stdc++.h>
#define y1 nefdi
#define DIM 1001
using namespace std;
ifstream fin("secventa.in");
ofstream fout("secventa.out");
long long v[DIM];
long long i, n, k, Max = -1e9, st, dr;
deque <int> d;
char c;
bool GetInt(long long &x){
if(c == -1)
return false;
while((c = getchar()) && c == ' ');
if(c == -1)
return false;
long long sign = (c == '-' ? -1 : 1);
if(isdigit(c))
x = c - '0';
else x = 0;
while((c = getchar()) && isdigit(c))
x = x * 10 + c - '0';
x *= sign;
return true;
}
int main(){
freopen("file.in", "r", stdin);
GetInt(n);
GetInt(k);
for(i=1;i<=n;i++)
GetInt(v[i]);
for(i=1;i<=n;i++){
while(!d.empty() && v[i] <= v[d.back()])
d.pop_back();
d.push_back(i);
while(!d.empty() && i - d.front() >= k)
d.pop_front();
if(i >= k){
if(v[d.front()] > Max){
st = d.front();
dr = i;
Max = v[d.front()];
}
}
}
fout << st << " " << dr << " " << Max;
}