Những hướng đi được (2048)

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Nguồn bài:
Blog Lập trình thuật toán – Thuật toán qua trò chơi 4: Game 2048
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

📖 Bài giảng & lời giải: đây là Bài tập 2 trong bài giảng Thuật toán qua trò chơi 4: Game 2048 trên blog Lập trình thuật toán – có lý thuyết, mô phỏng từng bước, gợi ý và code C++ / Python.

⚠️ Lưu ý: hãy đảm bảo em đã thật sự cố gắng tự làm bài trước, rồi mới xem gợi ý và lời giải nhé!

🎓 Khóa học Lập trình Thuật toán thi đấu của thầy Nguyễn Việt Nam Sơn – 111 buổi video, kèm cặp cá nhân, luyện thi chuyên Tin · HSG Tin học · Tin học trẻ · đội tuyển quốc gia · Olympic/ICPC. 👉 Xem chi tiết khóa học · Thành tích học viên

📞 Đăng ký học: Zalo 0767 666 702 · Facebook Nguyễn Việt Nam Sơn · 🌐 laptrinhthuattoan.blogspot.com


Cho bàn 2048 kích thước $n \times n$, mỗi ô là 0 (ô trống) hoặc một lũy thừa của 2. Một hướng bấm được gọi là đi được nếu bấm hướng đó làm bàn thay đổi (có ít nhất một ô trượt đi hoặc có ít nhất một phép gộp).

Luật trượt và gộp của 2048 (mô tả cho phím ←, các phím khác tương tự theo hướng tương ứng): trên mỗi hàng, các ô khác 0 được dồn hết về mép trái, giữ nguyên thứ tự. Xét các ô đó lần lượt từ mép trái (mép đích) đi ra: nếu hai ô liền nhau có cùng giá trị $x$ thì chúng gộp thành một ô $2x$ và người chơi được cộng $2x$ điểm. Mỗi ô chỉ được tham gia gộp nhiều nhất một lần trong một lần bấm (ô vừa gộp xong bị "khoá"), và cặp nào gần mép đích hơn thì được gộp trước. Ví dụ hàng 2 2 2 2 bấm ← thành 4 4 0 0 (+8 điểm), hàng 4 4 8 0 bấm ← thành 8 8 0 0 (+8 điểm, ô 8 mới không gộp tiếp với ô 8 cũ).

Hãy in ra các hướng đi được theo thứ tự L U R D (trái, lên, phải, xuống).

Dữ liệu vào

  • Dòng 1: số nguyên $n$ ($2 \le n \le 500$).
  • $n$ dòng tiếp theo, mỗi dòng $n$ số nguyên, mỗi số là $0$ hoặc $2^t$ với $1 \le t \le 30$.

Kết quả

In ra các hướng đi được (các ký tự trong L, U, R, D) theo đúng thứ tự L U R D, cách nhau một dấu cách. Nếu không có hướng nào đi được thì in NONE.

Sample Input

3
2 4 8
2 16 8
4 4 32

Sample Output

L U R D

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.