笨方法来了啊(手动狗头)


public class Solution {
    public int[][] flipChess (int[][] A, int[][] f) {
        for (int i = 0; i < f.length; i ++) {
            int x = f[i][0] - 1;
            int y = f[i][1] - 1;
            if (x == 0 && y == 0) {
                A[x + 1][y] = 1 - A[x + 1][y];
                A[x][y + 1] = 1 - A[x][y + 1];
            }
            if (x == 0 && y == 3) {
                A[x + 1][y] = 1 - A[x + 1][y];
                A[x][y - 1] = 1 - A[x][y - 1];
            }
            if (x == 3 && y == 3) {
                A[x - 1][y] = 1 - A[x - 1][y];
                A[x][y - 1] = 1 - A[x][y - 1];
            }
            if (x == 3 && y == 0) {
                A[x - 1][y] = 1 - A[x - 1][y];
                A[x][y + 1] = 1 - A[x][y + 1];
            }
            if (x == 0 && y > 0 && y < 3) {
                A[x + 1][y] = 1 - A[x + 1][y];
                A[x][y + 1] = 1 - A[x][y + 1];
                A[x][y - 1] = 1 - A[x][y - 1];
            }
            if (x == 3 && y > 0 && y < 3) {
                A[x - 1][y] = 1 - A[x - 1][y];
                A[x][y + 1] = 1 - A[x][y + 1];
                A[x][y - 1] = 1 - A[x][y - 1];
            }
            if (y == 0 && x > 0 && x < 3) {
                A[x][y + 1] = 1 - A[x][y + 1];
                A[x + 1][y] = 1 - A[x + 1][y];
                A[x - 1][y] = 1 - A[x - 1][y];
            }
            if (y == 3 && x > 0 && x < 3) {
                A[x][y - 1] = 1 - A[x][y - 1];
                A[x - 1][y] = 1 - A[x - 1][y];
                A[x + 1][y] = 1 - A[x + 1][y];
            }
            if (x > 0 && x < 3 && y > 0 && y < 3) {
                A[x][y - 1] = 1 - A[x][y - 1];
                A[x][y + 1] = 1 - A[x][y + 1];
                A[x - 1][y] = 1 - A[x - 1][y];
                A[x + 1][y] = 1 - A[x + 1][y];
            }
        }
        return A;
    }
}