Bogosort
Đề bài
Mô tả
Cho một mảng . Mảng được gọi là tốt nếu với mọi cặp chỉ số ta luôn có .
Bạn hãy sắp xếp lại (hoán vị) các phần tử của mảng sao cho mảng trở thành tốt. "Sắp xếp lại" nghĩa là đổi thứ tự các phần tử một cách tùy ý (giữ nguyên thứ tự ban đầu cũng là một lựa chọn hợp lệ).
Dữ liệu đảm bảo luôn tồn tại cách sắp xếp thỏa mãn.
Nếu có nhiều đáp án, in ra bất kỳ đáp án hợp lệ nào.
Dữ liệu vào
- Dòng đầu chứa số nguyên là số lượng bộ dữ liệu.
- Với mỗi bộ dữ liệu:
- Dòng đầu chứa số nguyên là độ dài mảng .
- Dòng thứ hai chứa số nguyên .
Dữ liệu ra
Với mỗi bộ dữ liệu, in ra một dòng gồm số nguyên là một hoán vị của mảng sao cho mảng thu được là tốt.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 1 7 4 1 1 3 5 6 3 2 1 5 6 4 |
7 5 3 1 1 6 5 4 3 2 1 |
Ở bộ thứ hai, với mảng 5 3 1 1 các giá trị lần lượt là , đôi một khác nhau nên mảng tốt. Bất kỳ hoán vị tốt nào khác cũng được chấp nhận. |
| 1 8 1 2 3 4 5 6 7 8 |
8 7 6 5 4 3 2 1 | Nếu để nguyên 1 2 3 4 5 6 7 8 thì mọi đều bằng nên không tốt. Sắp giảm dần thì các giá trị tăng ngặt, đôi một khác nhau. |
Bình luận