total_area
to 0 to store the total surface area.(i, j)
in the grid
.
grid[i][j]
is greater than 0, add grid[i][j] * 4 + 2
to total_area
(4 sides and top and bottom faces).(i, j-1)
, subtract min(grid[i][j], grid[i][j-1]) * 2
from total_area
.(i-1, j)
, subtract min(grid[i][j], grid[i-1][j]) * 2
from total_area
.total_area
as the result.