최솟값 찾기

아직 제출이 없습니다시간 제한2.4초메모리 제한512 MB

문제

NN개의 수 A1,A2,,ANA_1, A_2, \dots, A_NLL이 주어진다.

DiD_iAiL+1A_{i-L+1}부터 AiA_i까지의 최솟값이라고 하자. 즉 DiD_iii번째 수에서 끝나는 길이 LL의 구간에 들어 있는 가장 작은 값이다. 첨자가 00 이하인 AA는 없으므로 무시하고 DiD_i를 구한다. 따라서 i<Li < L이면 구간이 짧아져서 DiD_iA1A_1부터 AiA_i까지의 최솟값이 된다.

D1D_1부터 DND_N까지를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 NNLL이 주어진다. (1LN50000001 \le L \le N \le 5\,000\,000)

둘째 줄에 NN개의 수 AiA_i가 공백으로 구분되어 주어진다. (109Ai109-10^9 \le A_i \le 10^9)

출력

첫째 줄에 D1D_1부터 DND_N까지를 순서대로 공백으로 구분해 출력한다.