Pagini recente » Cod sursa (job #546889) | Cod sursa (job #548) | Cod sursa (job #1761510) | Cod sursa (job #1767459) | Cod sursa (job #1526236)
#include <fstream>
int v[500000], len, s, front, x;
int pos[500000];
int N, k;
using namespace std;
int main(){
ofstream of("secventa.out");
ifstream f("secventa.in");
int max = -300000, p1 = 0, p2 = 0;
f >> N >> k;
front = 1; len = 0;
//for (long i = 1; i <= N; ++i)
//f >> v[i];
for (long i = 1; i <= N; ++i){
f >> v[i];
while (len >= front && v[i] <= v[pos[len]]) --len;
pos[++len] = i;
if (pos[front] <= i - k)
++front;
if (i >= k && v[pos[front]] > max){
max = v[pos[front]]; p1 = i-k+1; p2 = i;
}
}
of <<p1<<" "<<p2 << " "<<max<<"\n";
}