Pagini recente » Cod sursa (job #2020483) | Cod sursa (job #722931) | Cod sursa (job #2417864) | Cod sursa (job #1043399) | Cod sursa (job #1930433)
#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,j;
int main()
{
f>>n>>k;
for(i = 1; i <= n; ++i) {
f>>a[i];
}
dr = 0;
st = 1;
m = -1000000;
j = 1;
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) {
++j;
}
if (i >= k && a[d[st]] > m) {
m = a[d[st]];
x = j;
y = i;
}
}
g<<x<<' '<<y<<' '<<m;
return 0;
}