Class Solution
-
- All Implemented Interfaces:
public final class Solution
2132 - Stamping the Grid.
Hard
You are given an
m x n
binary matrixgrid
where each cell is either0
(empty) or1
(occupied).You are then given stamps of size
stampHeight x stampWidth
. We want to fit the stamps such that they follow the given restrictions and requirements:Cover all the empty cells.
Do not cover any of the occupied cells.
We can put as many stamps as we want.
Stamps can overlap with each other.
Stamps are not allowed to be rotated.
Stamps must stay completely inside the grid.
Return
true
if it is possible to fit the stamps while following the given restrictions and requirements. Otherwise, returnfalse
.Example 1:
Input: grid = \[\[1,0,0,0],1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0], stampHeight = 4, stampWidth = 3
Output: true
Explanation: We have two overlapping stamps (labeled 1 and 2 in the image) that are able to cover all the empty cells.
Example 2:
Input: grid = \[\[1,0,0,0],0,1,0,0,0,0,1,0,0,0,0,1], stampHeight = 2, stampWidth = 2
Output: false
Explanation: There is no way to fit the stamps onto all the empty cells without the stamps going outside the grid.
Constraints:
m == grid.length
n == grid[r].length
<code>1 <= m, n <= 10<sup>5</sup></code>
<code>1 <= m * n <= 2 * 10<sup>5</sup></code>
grid[r][c]
is either0
or1
.<code>1 <= stampHeight, stampWidth <= 10<sup>5</sup></code>
-
-
Constructor Summary
Constructors Constructor Description Solution()
-