Skip to content

Commit d946a50

Browse files
added a code to solve Rotting Oranges problem
1 parent e240e81 commit d946a50

1 file changed

Lines changed: 27 additions & 0 deletions

File tree

Python/Rotting Oranges.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
def orangesRotting(grid):
2+
n,m = len(grid),len(grid[0])
3+
4+
move = [[1,0],[-1,0],[0,1],[0,-1]]
5+
time = -1
6+
q = []
7+
8+
for i in range(n):
9+
for j in range(m):
10+
if grid[i][j] == 2:
11+
q.append([i,j,0])
12+
13+
while q:
14+
a = q.pop(0)
15+
time = a[2]
16+
17+
for direc in move:
18+
x,y = a[0]+direc[0],a[1]+direc[1]
19+
if 0 <= x < n and 0 <= y < m and grid[x][y] == 1:
20+
q.append([x,y,a[2]+1])
21+
grid[x][y] = 2
22+
23+
for i in range(n):
24+
for j in range(m):
25+
if grid[i][j] == 1:
26+
return -1
27+
return time

0 commit comments

Comments
 (0)