LintCode 405-和为零的子矩阵

来源:互联网 发布:世界时钟哪些软件好 编辑:程序博客网 时间:2024/06/04 19:16

本人电子系,只为一学生。心喜计算机,小编以怡情。


两个函数,一个用来扫描,一个用来判断两点间的子矩阵是否为零
复杂度n^4

static public int[][] submatrixSum(int[][] matrix) {        // Write your code here        for (int i = 0; i < matrix.length; i++)            for (int j = 0; j < matrix[0].length; j++)                for (int m = 0; m <= i; m++)                    for (int n = 0; n <= j; n++)                        if (isZero(matrix, i, j, m, n))                            return new int[][]{{m, n}, {i, j}};        return new int[][]{{0, 0}, {0, 0}};    }    static public boolean isZero(int[][] matrix, int i, int j, int m, int n) {        int sum = 0;        for (int p = m; p <= i; p++)            for (int q = n; q <= j; q++) {                sum += matrix[p][q];            }        if (sum == 0) return true;        else            return false;    }
原创粉丝点击