// # A DashMart is a warehouse run by DoorDash that houses items found in convenience stores, grocery stores, and restaurants. We have a city with open roads, blocked-off roads, and DashMarts.
// # City planners want you to identify how far a location is from its closest DashMart.
// # You can only travel over open roads (up, down, left, right).
// # Locations are given in [row, col] format.
// # [
// # # 0 1 2 3 4 5 6 7 8
// # ['X', ' ', ' ', 'D', '1 ', '1 ', 'X', ' ', 'X'], # 0
// # ['X', ' ', 'X', 'X', ' ', '1 ', ' 1', ' ', 'X'], # 1
// # [' ', ' ', ' ', 'D', 'X', 'X', ' 1', 'X', ' '], # 2
// # [' ', ' ', ' ', 'D', ' ', 'X', '1', ' ', ' '], # 3
// # [' ', ' ', ' ', ' ', ' ', 'X', 'O', ' ', 'X'], # 4
// # [' ', ' ', ' ', ' ', 'X', ' ', ' ', 'X', 'X'] # 5
// # ]
// # ' ' represents an open road that you can travel over in any direction (up, down, left, or right).
// # 'X' represents an blocked road that you cannot travel through.
// # 'D' represents a DashMart.
// # # list of pairs [row, col]
// # locations = [
// # [200, 200],
// # [1, 4],
// # [0, 3],
// # [5, 8],
// # [1, 8],
// # [5, 5]
// # ]
// # answer = [-1, 2, 0, -1, 6, 9]
// # Provided:
// # - city: char[][]
// # - locations: int[][2]
// # Return:
// # - answer: int[]