Minimum Absolute Difference in Sliding Submatrix
You are given an m x n integer matrix grid and an integer k.
For every contiguous k x k submatrix of grid, compute the minimum absolute difference between any two distinct values within that submatrix.
Return a 2D array ans of size (m - k + 1) x (n - k + 1), where ans[i][j] is the minimum absolute difference in the submatrix whose top-left corner is (i, j) in grid.
Note: If all elements in the submatrix have the same value, the answer will be 0.
A submatrix (x1, y1, x2, y2) is a matrix that is formed by choosing all cells matrix[x][y] where x1 <= x <= x2 and y1 <= y <= y2.
Example 1
1 8 3 -2
Input
grid = [[1,8],[3,-2]], k = 2Output
[[2]]There is only one possible
k x k submatrix, and the minimum absolute difference among its distinct values [1, 8, 3, -2] is |1 - 3| = 2.Example 2
3 -1
Input
grid = [[3,-1]], k = 1Output
[[0,0]]Both
k x k submatrices have only one distinct element, so each answer is 0.Constraints
- 1 <= m == grid.length <= 30
- 1 <= n == grid[i].length <= 30
- -10^5 <= grid[i][j] <= 10^5
- 1 <= k <= min(m, n)