289. Game of Life

class Solution(object):
    def gameOfLife(self, board):
        """
        :type board: List[List[int]]
        :rtype: void Do not return anything, modify board in-place instead.
        """
        
        m=len(board)
        n=len(board[0])
        if m==0 or n==0:
            return 
        
        for i in xrange(m):
            for j in xrange(n):
                
                count=0
                for a in xrange(max(0,i-1),min(m,i+2)):
                    for b in xrange(max(0,j-1),min(n,j+2)):
                        if board[a][b]&1:
                            count+=1
                if (count==4 and (board[i][j]&1)) or count==3:
                    board[i][j]|=2
        for i in xrange(m):
            for j in xrange(n):
                board[i][j]>>=1
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容