
int solve(int[][] matrix) {
int[][] a = new int[matrix.length][matrix[0].length];int max = 0;for (int i = 0; i < matrix.length; i++) {for (int j = 0; j < matrix[i].length; j++) {if (matrix[i][j] == 0) continue;if (i == 0 || j == 0 || matrix[i - 1][j - 1] == 0) a[i][j] = 1;else {a[i][j] = a[i - 1][j - 1] + 1;for (int k = 1; k <= a[i - 1][j - 1]; k++) {if (matrix[i - k][j] == 0 || matrix[i][j - k] == 0) {a[i][j] = k;break;}}}if (a[i][j] > max) max = a[i][j];}}return max;}
好心人看看哪里编译错误了
括号错了,删掉结尾的括号试试