Python 2D数组搜索在行和列上相邻的单元格元素



我有一个2D数组,依赖于用户输入,每个元素只有0和1。例子:矩阵=[[1,0,1],[1,0,0],[1,0,1]表示病毒感染,如果用户在[1,0,1]行输入,它将在[1,0,1]=>[1,1,1]上被感染,因为离1最近的单元格将被感染。我想要获取用户输入的所有行和列如果该值为0在值1之前或旁边的值为0。这里有一些感染细胞的代码:

def isInfected(grid, r, c):
return grid[r][c] == 1

功能检查得到下一个感染:

def getNextInfectedCells(grid):
row = len(grid)
column = len(grid[0])
result = []
for r in range(row):
result.append([])
for c in range(column:
if(r==0 or r==row-1) or (c==0 or c==column-1):
result.append(grid[r][c])
elif grid[r][c]==0:
result[r].append(0)
else:
result[r].append(grid[r][c])
for line in result:
print(line)

什么错了!它不工作最好的方面!

我不确定我是否理解了一个问题,但这段代码应该可以工作。

user_input = [[1,0,1],[1,0,0],[1,0,1]]
for row in user_input:
if 1 in row:
infected = row.index(1) + 1
row[infected] = 1

相关内容

最新更新