Pagini recente » Cod sursa (job #1544289) | Cod sursa (job #1296374) | Cod sursa (job #2474932) | Cod sursa (job #1290809) | Cod sursa (job #678853)
Cod sursa(job #678853)
#include<cstdio>
#include<queue>
#define MAX 500050
using namespace std;
int n, k,v[MAX], sol = -30050;
deque<int> DQ;
int main()
{
freopen("secventa.in", "r", stdin);
int i, end;
scanf("%d %d\n", &n, &k);
for(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\n", end - k + 1, end, sol);
fclose(stdout);
}