Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Bài toán di chuyển robot trong c++

14:28 11-05-2023 3.707 lượt xem 4 bình luận 15:50 21-05-2023

.Cho mảng 2 chiều chứa các số nguyêndương (không trùng nhau) đặc tả mê cung, 1 robot được đặt ở vị trí

(x,y). Robot chỉ có thể đi theo 4 hướng(trên, dưới, trái, phải). Robot sẽ lựa chọn hướng có giá trị lớn để đi.

Ví dụ robot được đặt ở vị trí (0,0) -> 2 3 16 56 87 100 101 66 543 200 150

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Fury Moderator đã bình luận 15:49 21-05-2023

Bạn có thể thực hiện bằng các bước sau:

  1. Khai báo và khởi tạo mảng 2 chiều chứa mê cung và vị trí ban đầu của robot.
  2. Xác định các hướng di chuyển có thể của robot (trên, dưới, trái, phải).
  3. Tạo một hàm để kiểm tra xem robot có thể di chuyển đến một ô hàng xóm hay không. Hàm này sẽ kiểm tra xem ô hàng xóm có nằm trong mê cung và có giá trị lớn hơn ô hiện tại không.
  4. Tạo một hàm để cho robot chọn hướng di chuyển có giá trị lớn nhất.
  5. Thực hiện di chuyển robot bằng cách lặp lại việc chọn hướng và cập nhật vị trí của robot cho đến khi không còn hướng di chuyển hợp lệ.
  6. Thực hiện chạy chương trình chính.

Kết quả sẽ hiển thị vị trí mới của robot sau khi di chuyển dựa trên giá trị lớn nhất trong mê cung.

Vo Tan Duc đã bình luận 17:33 14-05-2023

Bạn có thể áp dụng thuật toán tìm đường đi ngắn nhất nha

Câu hỏi mới nhất