Advertisement
pacho_the_python

martian_explorer

Jun 2nd, 2022
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.38 KB | None | 0 0
  1. from collections import deque
  2.  
  3. size = 6
  4.  
  5. matrix = []
  6. water = 0
  7. metal = 0
  8. concrete = 0
  9. for _ in range(size):
  10.     matrix.append(list(input().split()))
  11.  
  12. rover_row = 0
  13. rover_col = 0
  14.  
  15. for row in range(size):
  16.     for col in range(size):
  17.         if matrix[row][col] == "E":
  18.             rover_row = row
  19.             rover_col = col
  20.  
  21.  
  22. directions = deque(input().split(", "))
  23.  
  24. while directions:
  25.     current_direction = directions.popleft()
  26.     if current_direction == "right":
  27.         rover_col += 1
  28.         if rover_col == size:
  29.             rover_col = 0
  30.         if matrix[rover_row][rover_col] == "W":
  31.             water += 1
  32.             print(f"Water deposit found at ({rover_row}, {rover_col})")
  33.         elif matrix[rover_row][rover_col] == "M":
  34.             metal += 1
  35.             print(f"Metal deposit found at ({rover_row}, {rover_col})")
  36.         elif matrix[rover_row][rover_col] == "C":
  37.             concrete += 1
  38.             print(f"Concrete deposit found at ({rover_row}, {rover_col})")
  39.         elif matrix[rover_row][rover_col] == "R":
  40.             print(f"Rover got broken at ({rover_row}, {rover_col})")
  41.             break
  42.  
  43.     elif current_direction == "left":
  44.         rover_col -= 1
  45.         if rover_col < 0:
  46.             rover_col = size - 1
  47.         if matrix[rover_row][rover_col] == "W":
  48.             water += 1
  49.             print(f"Water deposit found at ({rover_row}, {rover_col})")
  50.         elif matrix[rover_row][rover_col] == "M":
  51.             metal += 1
  52.             print(f"Metal deposit found at ({rover_row}, {rover_col})")
  53.         elif matrix[rover_row][rover_col] == "C":
  54.             concrete += 1
  55.             print(f"Concrete deposit found at ({rover_row}, {rover_col})")
  56.         elif matrix[rover_row][rover_col] == "R":
  57.             print(f"Rover got broken at ({rover_row}, {rover_col})")
  58.             break
  59.  
  60.     elif current_direction == "down":
  61.         rover_row += 1
  62.         if rover_row == size:
  63.             rover_row = 0
  64.         if matrix[rover_row][rover_col] == "W":
  65.             water += 1
  66.             print(f"Water deposit found at ({rover_row}, {rover_col})")
  67.         elif matrix[rover_row][rover_col] == "M":
  68.             metal += 1
  69.             print(f"Metal deposit found at ({rover_row}, {rover_col})")
  70.         elif matrix[rover_row][rover_col] == "C":
  71.             concrete += 1
  72.             print(f"Concrete deposit found at ({rover_row}, {rover_col})")
  73.         elif matrix[rover_row][rover_col] == "R":
  74.             print(f"Rover got broken at ({rover_row}, {rover_col})")
  75.             break
  76.  
  77.     elif current_direction == "up":
  78.         rover_row -= 1
  79.         if rover_row < 0:
  80.             rover_col = size - 1
  81.         if matrix[rover_row][rover_col] == "W":
  82.             water += 1
  83.             print(f"Water deposit found at ({rover_row}, {rover_col})")
  84.         elif matrix[rover_row][rover_col] == "M":
  85.             metal += 1
  86.             print(f"Metal deposit found at ({rover_row}, {rover_col})")
  87.         elif matrix[rover_row][rover_col] == "C":
  88.             concrete += 1
  89.             print(f"Concrete deposit found at ({rover_row}, {rover_col})")
  90.         elif matrix[rover_row][rover_col] == "R":
  91.             print(f"Rover got broken at ({rover_row}, {rover_col})")
  92.             break
  93.  
  94. if water >= 1 and metal >= 1 and concrete >= 1:
  95.     print("Area suitable to start the colony.")
  96. else:
  97.     print("Area not suitable to start the colony.")
  98.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement