题解 | #棋子翻转#

棋子翻转

https://www.nowcoder.com/practice/a8c89dc768c84ec29cbf9ca065e3f6b4

#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param A int整型二维数组 
# @param f int整型二维数组 
# @return int整型二维数组
#
class Solution:
    def flipChess(self , A: List[List[int]], f: List[List[int]]) -> List[List[int]]:
        # write code here
        m = [0 for i in range(16)]
        for i in range(len(f)):
            if f[i][1] > 1:
                m[(f[i][0] - 1) * 4 + f[i][1] -2] += 1
            if f[i][1] < 4:
                m[(f[i][0] - 1) * 4 + f[i][1]] += 1
            if f[i][0] > 1:
                m[(f[i][0] - 1) * 4 + f[i][1] -5] += 1
            if f[i][0] < 4:
                m[(f[i][0] - 1) * 4 + f[i][1] +3] += 1
        for i in range(len(m)):
            if m[i] % 2 == 1:
                if A[i//4][i%4] == 0:
                    A[i//4][i%4] = 1
                else:
                    A[i//4][i%4] = 0
        return A

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务