You are given a 2D binary grid of size m×n. In this grid, 0 represents water and 1 represents land. At the beginning, every cell in the grid contains water (i.e., all cells are 0).
You can perform an add land operation that changes a water cell into land. An array positions is provided, where each element positions[i] = [ri, ci] indicates the cell (ri, ci), where the ith operation is applied.
Your task is to return an array of integers answer, where answer[i] gives the number of islands present in the grid after executing the ith operation.
An island is defined as a cluster of land cells connected horizontally or vertically (diagonal connections are not considered). The grid is assumed to be completely enclosed by water along its four boundaries.
Constraints:
1<= m, n, positions.length <=104
1<= m * n <=104
positions[i].length ==2
0<= ri < m
0<= ci < n