Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình kiểm tra robot có thể đến đích trong Python


Robot bắt đầu tại (0,0). Cho danh sách di chuyển 'N','S','E','W'. Kiểm tra có thể đến tọa độ hay không.

Ví dụ: , → True.

Giải thuật (Mô phỏng trực tiếp O(n))

  1. Khởi tạo .
  2. Duyệt :
    • 'N': y += 1
    • 'S': y -= 1
    • 'E': x += 1
    • 'W': x -= 1
  3. So sánh với .

Ví dụ minh họa

class Solution:
    def solve(self, moves, coord):
        temp_coord = [0, 0]
        for move in moves:
            if move == "N":
                temp_coord[1] += 1
            elif move == "S":
                temp_coord[1] -= 1
            elif move == "E":
                temp_coord[0] += 1
            elif move == "W":
                temp_coord[0] -= 1
        return temp_coord[0] == coord[0] and temp_coord[1] == coord[1]

ob = Solution()
moves = ['N','N','E','E','S']
coord = [2, 1]
print(ob.solve(moves, coord))  # Output: True

Đầu vào

['N','N','E','E','S'], [2,1]

Đầu ra

True