Pagini recente » Cod sursa (job #1490075) | Cod sursa (job #616277) | Cod sursa (job #1881819) | Cod sursa (job #677237) | Cod sursa (job #1930435)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("secventa.in"); ofstream g("secventa.out");
int n,k,a[500001],d[500001],i,m,st,dr,x,y;
int main()
{
f>>n>>k;
for(i = 1; i <= n; ++i) {
f>>a[i];
}
dr = 0;
st = 1;
m = -1000000;
for(i = 1; i <= n; ++i) {
while( st <= dr && a[i] < a[d[dr]]) {
--dr;
}
++dr;
d[dr] = i;
if (d[st] == i - k) {
++st;
}
if (i >= k && a[d[st]] > m) {
m = a[d[st]];
x = d[st];
y = i;
}
}
g<<x<<' '<<y<<' '<<m;
return 0;
}