Class Solution
- java.lang.Object
-
- g2101_2200.s2132_stamping_the_grid.Solution
-
public class Solution extends Object
2132 - Stamping the Grid.Hard
You are given an
m x nbinary matrixgridwhere 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
trueif 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.lengthn == grid[r].length1 <= m, n <= 1051 <= m * n <= 2 * 105grid[r][c]is either0or1.1 <= stampHeight, stampWidth <= 105
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanpossibleToStamp(int[][] grid, int h, int w)
-