zoukankan      html  css  js  c++  java
  • leetcode1034

     1 class Solution:
     2     def __init__(self):
     3         self.V = list()
     4 
     5     def bfs(self,grid,color,rows,coloums,r,c,ocolor):
     6         cur = [r,c]
     7         if cur[0]-1 >=0 and self.V[cur[0]-1][cur[1]]==0 and grid[cur[0]-1][cur[1]]==ocolor:
     8             grid[cur[0]-1][cur[1]] = color
     9             self.V[cur[0]-1][cur[1]] = 1
    10             self.bfs(grid,color,rows,coloums,cur[0]-1,cur[1],ocolor)
    11         if cur[0]+1 <rows and self.V[cur[0]+1][cur[1]]==0 and grid[cur[0]+1][cur[1]] == ocolor:
    12             grid[cur[0]+1][cur[1]] = color
    13             self.V[cur[0]+1][cur[1]] = 1
    14             self.bfs(grid,color,rows,coloums,cur[0]+1,cur[1],ocolor)
    15         if cur[1]-1 >=0 and self.V[cur[0]][cur[1]-1]==0 and grid[cur[0]][cur[1]-1] == ocolor:
    16             grid[cur[0]][cur[1]-1] = color
    17             self.V[cur[0]][cur[1]-1] = 1
    18             self.bfs(grid,color,rows,coloums,cur[0],cur[1]-1,ocolor)
    19         if cur[1]+1 <coloums and self.V[cur[0]][cur[1]+1]==0 and grid[cur[0]][cur[1]+1]==ocolor:
    20             grid[cur[0]][cur[1]+1] = color
    21             self.V[cur[0]][cur[1]+1] = 1
    22             self.bfs(grid,color,rows,coloums,cur[0],cur[1]+1,ocolor)
    23             
    24     def colorBorder(self, grid: 'List[List[int]]', r0: int, c0: int, color: int) -> 'List[List[int]]':
    25         if grid[r0][c0] != color:
    26             ocolor = grid[r0][c0]
    27             rows = len(grid)
    28             coloums = len(grid[0])
    29             self.V = [[0 for c in range(coloums)] for r in range(rows)]
    30             self.V[r0][c0] = 1
    31             grid[r0][c0] = color
    32             self.bfs(grid,color,rows,coloums,r0,c0,ocolor)
    33             print(self.V)
    34             for i in range(rows):
    35                 for j in range(coloums):
    36                     if i>0 and i<rows-1 and j>0 and j<coloums-1:
    37                         if self.V[i][j] == 1 and self.V[i-1][j]==1 and self.V[i+1][j]==1 and self.V[i][j-1]==1 and self.V[i][j+1]==1:
    38                             grid[i][j] = ocolor
    39         return grid

    这题是什么鬼玩意儿?是我打开方式不对么。。。

  • 相关阅读:
    javaXML文件的写入之DOM和DOM4J
    javaXML文件解析之DOM4J实操
    java解析XML文件四种方法之引入源文件
    java文件传输之文件编码和File类的使用
    java中Collections.sort()方法实现集合排序
    java集合的contains(obj)方法的实现
    java集合及其方法
    java基本数据类型及其包装类
    java类的种类
    java类定义、变量类型、构造函数
  • 原文地址:https://www.cnblogs.com/asenyang/p/10783234.html
Copyright © 2011-2022 走看看