[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

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.