Pagini recente » Cod sursa (job #1067771) | Cod sursa (job #2367339) | Cod sursa (job #1266250) | Cod sursa (job #1891730) | Cod sursa (job #2405899)
#include <iostream>
#include <fstream>
#define NMAX 500001
using namespace std;
int nums[NMAX];
int deque[NMAX];
int main(){
ifstream be("secventa.in");
ofstream ki("secventa.out");
int n, k;
be >> n >> k;
int left = 1, right = 0;
int start, end, max = -30001;
for(int i = 1; i <= n; ++i){
be >> nums[i];
while(left <= right && nums[i] <= nums[deque[i]])
right--;
deque[++right] = i;
if(deque[left] == i - k)
++left;
if(i >= k){
if(nums[deque[left]] > max){
max = nums[deque[left]];
start = i - k + 1;
end = i;
}
}
}
for(int i = start; i <= end; i++){
ki << nums[i] << " ";
}
}