Thu nhỏ đống cỏ
Nộp bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
4.0s
Python 3
5.0s
Giới hạn bộ nhớ:
256M
Đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Go, Java, Kotlin, Pascal, Python, Scratch
Có đống cỏ xếp thành một hàng, đống thứ có chiều cao . Bạn có thể hoán đổi hai đống cỏ liền kề bất kỳ số lần, với điều kiện chênh lệch chiều cao của chúng không vượt quá .
Hãy tìm dãy chiều cao theo thứ tự nhỏ nhất theo thứ tự từ điển có thể đạt được.
Dữ liệu vào
Dòng đầu tiên chứa hai số nguyên và .
- dòng tiếp theo, dòng thứ chứa số nguyên .
Dữ liệu ra
In ra dòng: chiều cao các đống cỏ sau khi sắp xếp theo thứ tự nhỏ nhất từ điển.
Ràng buộc
Subtask 1 (10%):
Subtask 2 (20%):
Subtask 3 (70%): Không có ràng buộc thêm.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 3 7 7 3 6 2 |
6 7 7 2 3 |
Đống muốn lên đầu nhưng bị chặn bởi (chênh ). Đống có thể vượt qua (chênh ) nhưng bị chặn bởi (chênh ). Đống có thể vượt (chênh ) và (chênh ), lên vị trí đầu tiên. Kết quả tối ưu là . |
| 4 2 3 1 4 2 |
1 2 3 4 |
Đống vượt qua (chênh ), lên đầu. Tiếp theo vượt qua (chênh ) rồi (chênh ), lên đầu. Dãy kết quả là . |
Ghi chú
Dãy nhỏ hơn dãy theo thứ tự từ điển nếu tồn tại chỉ số đầu tiên mà .
Bình luận