Algorithm
Count Submatrices With Equal Frequency of X and Y
Solution
for r in range(rows):
for c in range(cols):
# 1. Look at the current cell
is_x = 1 if grid[r][c] == 'X' else 0
is_y = 1 if grid[r][c] == 'Y' else 0
# 2. Apply our overlapping math trick
x_cnt = is_x + dp[r][c+1][0] + dp[r+1][c][0] - dp[r][c][0]
y_cnt = is_y + dp[r][c+1][1] + dp[r+1][c][1] - dp[r][c][1]
# 3. Save it for later
dp[r+1][c+1] = (x_cnt, y_cnt)Video GuideLeetcode Daily
Time Complexity
O(m · n)
Space Complexity
O(m · n)
