Pagini recente » Cod sursa (job #1670533) | Cod sursa (job #3204121) | Cod sursa (job #2337175) | Cod sursa (job #1287056) | Cod sursa (job #678845)
Cod sursa(job #678845)
#include<cstdio>
#include<deque>
#define MAX 500050
using namespace std;
int v[MAX];
deque<int> DQ;
int main()
{
freopen("secventa.in", "r", stdin);
int n, k, end, sol = -30050;
scanf("%d %d\n", &n, &k);
for(int i = 1; i <= n; i++)
{
scanf("%d", &v[i]);
while(!DQ.empty() && v[i] < v[DQ.back()])
DQ.pop_back();
DQ.push_back(i);
if(DQ.front() == i - k)
{
DQ.pop_front();
}
if(i >= k && v[DQ.front()] > sol)
{
sol = v[DQ.front()];
end = i;
}
}
fclose(stdin);
freopen("secventa.out", "w", stdout);
printf("%d %d %d", end - k + 1, end, sol);
fclose(stdout);
}