题目:
给你一个n×n的矩阵g,求一个(n-2)×(n-2)的矩阵res
res对应的值为矩阵g每个3×3子矩阵的最大值
思路:
暴力枚举,先枚举每个3×3矩阵的起点
在每个3×3矩阵内求最大值
这题主要考的就是矩阵的枚举思想
class Solution {
public int[][] largestLocal(int[][] grid) {
int n=grid.length;
int[][] res=new int[n-2][n-2];
for(int i=0;i<n-2;i++)
for(int j=0;j<n-2;j++) //i j枚举每个3x3矩阵的起点
for(int x=i;x<=i+2;x++)
for(int y=j;y<=j+2;y++) //x y在每个3x3矩阵里求最大的
res[i][j]=Math.max(res[i][j],grid[x][y]);
return res;
}
}