DHBB 2023 - CLK - 10 - Sắp xếp
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
Hôm nay Tí và Tèo chơi một trò chơi về số nguyên. Tí có một dãy số nguyên không âm ~a_1, a_2, \dots, a_n~. Tí cần sắp xếp dãy theo thứ tự không giảm chỉ bằng thao tác sau: chọn hai chỉ số ~i, j~ ~(1 \le i < j \le n)~, sau đó đảo ngược đoạn từ ~i~ đến ~j~.
Tí muốn Tèo sắp xếp dãy ~a_1, a_2, \dots, a_n~ theo yêu cầu trên với số thao tác không vượt quá ~2 \cdot n~. Tèo chưa biết cách thực hiện nên mong muốn bạn giúp đỡ.
Input
Dòng đầu tiên chứa số nguyên dương ~n~;
Dòng thứ hai gồm ~n~ số nguyên không âm ~a_1, a_2, \dots, a_n~ ~(a_i \le 10^9)~.
Output
Dòng đầu tiên ghi số nguyên ~s~ là số thao tác cần thực hiện;
~s~ dòng tiếp theo, mỗi dòng ghi hai số nguyên ~i, j~ mô tả một thao tác đảo ngược đoạn từ ~i~ đến ~j~.
Scoring
| Subtask | Ràng buộc |
|---|---|
| 1 | ~n \le 10^3~ |
| 2 | ~n \le 10^5~ |
Sample Input 1
4
0 1 0 1
Sample Output 1
1
2 3
Bình luận