Distinct Values in Maximum-Sum Square Windows
Problem statement
Enumerate every size by size submatrix. Find the maximum window sum, collect each distinct value appearing in any tied maximum window, and return their sum.
Function
sumDistinctMaxWindowValues(matrix: int[][], size: int) → longExamples
Example 1
matrix = [[1,2,1],[2,1,2],[1,2,1]]size = 2return = 3All windows tie and the distinct union is {1,2}.
Example 2
matrix = [[1,2],[3,4]]size = 1return = 4The maximum one-cell window contains 4.
Constraints
1 <= rows,columns <= 2001 <= size <= min(rows,columns)