[DHBB25 - DX44 - 10] Bài 3: Đường đi tốt nhất
Xem dạng PDF
Gửi bài giải
Điểm:
25,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT
Trong 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
Cho một lưới ô vuông có ~n~ hàng và ~m~ cột. Ô nằm trên hàng ~i~ và cột ~j~ được kí hiệu là ~(i, j)~. Ở mỗi ô trên lưới, người ta điền một chữ cái Latin in thường (từ 'a' đến 'z'). Người ta chơi một trò chơi như sau:
- Xuất phát từ ô ~(1, 1)~.
- Ở mỗi bước, người chơi được di chuyển từ ô hiện tại ~(i, j)~ đến một trong hai ô ~(i + 1, j)~ hoặc ~(i, j + 1)~.
- Trò chơi kết thúc khi người chơi đi đến ô ~(n, m)~.
- Sau khi chơi, người chơi nhận được một xâu bao gồm các kí tự trong các ô đã đi, theo thứ tự đã đi (kể cả ô ~(1, 1)~ và ~(n, m)~).
Yêu cầu: Hãy tìm cách chơi sao cho xâu nhận được có thứ tự từ điển nhỏ nhất có thể.
Input
- Dòng đầu tiên chứa hai số nguyên ~n~ và ~m~ (~1 \le n, m \le 2000~) là kích thước của lưới.
- ~n~ dòng tiếp theo, mỗi dòng chứa một xâu độ dài ~m~ chỉ bao gồm các chữ cái Latin in thường.
Output
- Ghi ra một xâu duy nhất là xâu có thứ tự từ điển nhỏ nhất có thể.
Sample Input 1
3 3
aaa
aab
acd
Sample Output 1
aaabd
Bình luận