You are given an m x n grid rooms initialized with these three possible values:
-1 — A wall or an obstacle.0 — A gate.INF — Infinity means an empty room. We use the value 231 - 1 = 2147483647 to represent INF.
Fill each empty room with the distance to its nearest gate. If it is impossible to reach a gate, leave it as INF.
Example 1:
Input: rooms = [[2147483647,-1,0,2147483647],[2147483647,2147483647,2147483647,-1],[2147483647,-1,2147483647,-1],[0,-1,2147483647,2147483647]]
Output: [[3,-1,0,1],[2,2,1,-1],[1,-1,2,-1],[0,-1,3,4]]
Constraints:
m == rooms.lengthn == rooms[i].length1 <= m, n <= 250