Điểm:
600
Thời gian:
2.0s
Bộ nhớ:
259M
Input:
bàn phím
Output:
màn hình
Cho một hoán vị \((P_1,P_2,...,P_n)\) của tập hợp: \(\left\{1,2,3,..,N\right\}\) và ta có thể thực hiện một số lần tuỳ ý (có thể bằng \(0\)) với một phép toán sau:
- Chọn hai chỉ số \(i,j(1\le i<j\le N)\) thoả mãn \(j-i\le K\) và \(|P_i-P_j|=1\). Sau đó, hoán vị giá trị của \(P_i\) và \(P_j\) (với \(K\) là số nguyên dương cho trước)
Yêu cầu: Xét tất cả các hoán vị có thể thu được bằng cách áp dụng phép toán trên. Hãy tìm hoán vị có thứ tự từ điển bé nhất !
Input
-
Dòng thứ nhất chứa \(2\) số nguyên \(N,K(2\le N\le 500000,1\le K\le N-1)\)
-
Dóng thứ hai chứa hoán vị \(P_1,P_2,...,P_N\)
Output
- In ra ra hoán vị có thứ tự từ điển bé nhất cần tìm, và in mỗi số trên một dòng.
Example
Test 1
Input
10 3
6 4 3 9 2 5 7 1 10 8
Output
4
3
2
7
1
6
8
5
10
9
Test 2
Input
12 2
5 2 6 4 11 1 10 7 3 9 8 12
Output
2
1
4
3
6
5
9
8
7
11
10
12
Bình luận