289. Game of Life

xiaoxiao2021-02-27  156

class Solution(object):     def gameOfLife(self, board):         """         :type board: List[List[int]]         :rtype: void Do not return anything, modify board in-place instead.         """         live = {(i, j) for i, row in enumerate(board) for j, live in enumerate(row) if live}         live = self.gameOfLifeInfinite(live)         for i, row in enumerate(board):             for j in range(len(row)):                 row[j] = int((i, j) in live)               def gameOfLifeInfinite(self, live):         ctr = collections.Counter((I, J)                               for i, j in live                               for I in range(i-1, i+2)                               for J in range(j-1, j+2)                               if I != i or J != j)         return {ij             for ij in ctr

            if ctr[ij] == 3 or ctr[ij] == 2 and ij in live}

https://discuss.leetcode.com/topic/26236/infinite-board-solution

转载请注明原文地址: https://www.6miu.com/read-13746.html

最新回复(0)