Pagini recente » Cod sursa (job #1643371) | Cod sursa (job #1906157) | Cod sursa (job #3258557) | Cod sursa (job #2476767) | Cod sursa (job #2938421)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
long long n, k, i, m = -999999, u;
int a[500002];
int q[500002], st = 1, dr;
int main() {
fin >> n >> k;
for(i = 1; i <= n; i++) fin >> a[i];
for(i = 1; i < k; i++) {
while(dr >= st && a[i] <= a[q[dr]]) dr--;
q[++dr] = i;
}
for(i = k; i <= n; i++) {
if(dr >= st && i - q[st] == k) st++;
while(dr >= st && a[i] <= a[q[dr]]) dr--;
q[++dr] = i;
if(m < a[q[st]]) {
u = i;
m = a[q[st]];
}
}
fout << u - k + 1 << " " << u << " " << m;
return 0;
}