[Quảng Trị - HSG12 - 2025] Bài 1: Trò chơi điện tử
Xem dạng PDFTrong trò chơi điện tử Zentric, nhân vật được điều khiển di chuyển trên một ô lưới (giả sử số ô không hạn chế).
Khởi đầu trò chơi, nhân vật được đặt tại một ô bất kì. Tại mỗi bước, nhân vật có thể di chuyển đến ô liền kề là một trong các ô: bên trái, bên phải, phía trên, phía dưới của ô hiện tại.
Để hướng dẫn nhân vật di chuyển, cần một chuỗi lệnh ~S~ gồm các kí tự ~'L'~ (Left - sang trái), ~'R'~ (Right - sang phải), ~'U'~ (Up - lên trên) và ~'D'~ (Down - xuống dưới).
Cho trước một chuỗi lệnh ~S~, để hoàn thành màn chơi, bạn cần chỉnh sửa lại chuỗi lệnh ~S~ sao cho có thể hướng dẫn nhân vật di chuyển qua các ô, mỗi ô được phép đi qua không quá một lần và phải trở về đúng ô xuất phát. Việc chỉnh sửa lại chuỗi lệnh ~S~ có thể được thực hiện bằng cách:
- Xóa đi một số kí tự (có thể không xóa kí tự nào) trong chuỗi lệnh ~S~.
- Thay đổi vị trí các kí tự trong chuỗi lệnh ~S~ theo ý muốn.
Yêu cầu: Hãy xác định độ dài lớn nhất của chuỗi lệnh ~S~ sau khi thực hiện việc chỉnh sửa.
Input
Vào từ file văn bản GAME.INP:
- Gồm một dòng chứa chuỗi lệnh ~S~ (độ dài không vượt quá ~10^6~).
Output
Ghi ra file văn bản GAME.OUT:
- Gồm một dòng ghi một số nguyên ~t~ là kết quả bài toán. Trường hợp không thể chỉnh sửa chuỗi lệnh ~S~ để hoàn thành màn chơi thì in ~-1~.
Scoring
- Subtask ~1~ ~(60\%)~: Độ dài xâu không quá ~255~ kí tự.
- Subtask ~2~ ~(40\%)~: Không còn ràng buộc gì thêm.
Example input 1
LURD
Example output 1
4
Note 1
- Không cần xóa kí tự nào.
Example input 2
LDLDURURL
Example output 2
8
Note 2
- Phải xóa đi một kí tự ~'L'~.
Example input 3
LLLLU
Example output 3
-1
Note 3
- Không có phương án chỉnh sửa chuỗi để hoàn thành màn chơi.
Bình luận