题解 | #棋子翻转#
棋子翻转
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


