[DHBB24 - CNBK - 10] Bài 2: Số lớn thứ k
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Bạn KD rất thích nghiền ngẫm các bài toán liên quan đến hoán vị. Một hôm, cô ấy viết ra một hoán vị ~(p_1, p_2, p_3, \dots, p_n)~ của dãy ~(1, 2, 3, \dots, n)~ rồi xét từng đoạn con liên tiếp kích thước ~m~ (từ trái sang phải) của hoán vị này: ~p_{1 \dots m}, p_{2 \dots m+1}, \dots, p_{n-m+1 \dots n}~.
Biết bạn An là một lập trình viên tài năng nên bạn KD đố bạn An hãy tính giá trị lớn thứ ~k_i~ của đoạn con thứ ~i~ (bắt đầu từ ~p_i~ và kết thúc tại ~p_{i+m-1}~), với mỗi chỉ số ~i~ từ ~1~ đến ~n-m+1~. Vì đã quá mệt mỏi sau hai ngày thi Codeforces liên tiếp nên bạn An đã không hoàn thành được thách đố của bạn KD. Các em hãy giúp bạn An hoàn thành thách đố của bạn KD nhé!
Yêu cầu: Với mỗi đoạn con kích thước ~m~, hãy tìm giá trị lớn thứ ~k_i~ trong đoạn đó.
Input
- Dòng đầu chứa hai số nguyên dương ~n~ và ~m~ (~m < n~) – kích thước của hoán vị và mỗi đoạn con cần xét.
- Dòng thứ hai chứa ~n~ số nguyên dương ~p_1, p_2, \dots, p_n~ mô tả một hoán vị của dãy ~(1, 2, \dots, n)~.
- Dòng tiếp theo chứa ~n-m+1~ số nguyên dương ~k_1, k_2, \dots, k_{n-m+1}~ (~k_i \le m~).
Output
- Ghi ra một dòng gồm ~n-m+1~ số nguyên dương, số thứ ~i~ là giá trị lớn thứ ~k_i~ trong đoạn con từ ~i~ đến ~i+m-1~ của hoán vị ~p~.
Sample Input 1
6 4
5 2 3 1 4 6
2 1 1
Sample Output 1
3 4 6
Bình luận