g2501_2600.s2536_increment_submatrices_by_one.readme.md Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of leetcode-in-kotlin Show documentation
Show all versions of leetcode-in-kotlin Show documentation
Kotlin-based LeetCode algorithm problem solutions, regularly updated
2536\. Increment Submatrices by One
Medium
You are given a positive integer `n`, indicating that we initially have an `n x n` **0-indexed** integer matrix `mat` filled with zeroes.
You are also given a 2D integer array `query`. For each query[i] = [row1i, col1i, row2i, col2i]
, you should do the following operation:
* Add `1` to **every element** in the submatrix with the **top left** corner (row1i, col1i)
and the **bottom right** corner (row2i, col2i)
. That is, add `1` to `mat[x][y]` for all row1i <= x <= row2i
and col1i <= y <= col2i
.
Return _the matrix_ `mat` _after performing every query._
**Example 1:**
![](https://assets.leetcode.com/uploads/2022/11/24/p2example11.png)
**Input:** n = 3, queries = [[1,1,2,2],[0,0,1,1]]
**Output:** [[1,1,0],[1,2,1],[0,1,1]]
**Explanation:** The diagram above shows the initial matrix, the matrix after the first query, and the matrix after the second query.
- In the first query, we add 1 to every element in the submatrix with the top left corner (1, 1) and bottom right corner (2, 2).
- In the second query, we add 1 to every element in the submatrix with the top left corner (0, 0) and bottom right corner (1, 1).
**Example 2:**
![](https://assets.leetcode.com/uploads/2022/11/24/p2example22.png)
**Input:** n = 2, queries = [[0,0,1,1]]
**Output:** [[1,1],[1,1]]
**Explanation:** The diagram above shows the initial matrix and the matrix after the first query.
- In the first query we add 1 to every element in the matrix.
**Constraints:**
* `1 <= n <= 500`
* 1 <= queries.length <= 104
* 0 <= row1i <= row2i < n
* 0 <= col1i <= col2i < n