java.lang.Object
g0801_0900.s0892_surface_area_of_3d_shapes.Solution

public class Solution extends java.lang.Object
892 - Surface Area of 3D Shapes.

Easy

You are given an n x n grid where you have placed some 1 x 1 x 1 cubes. Each value v = grid[i][j] represents a tower of v cubes placed on top of cell (i, j).

After placing these cubes, you have decided to glue any directly adjacent cubes to each other, forming several irregular 3D shapes.

Return the total surface area of the resulting shapes.

Note: The bottom face of each shape counts toward its surface area.

Example 1:

Input: grid = [[1,2],[3,4]]

Output: 34

Example 2:

Input: grid = [[1,1,1],[1,0,1],[1,1,1]]

Output: 32

Example 3:

Input: grid = [[2,2,2],[2,1,2],[2,2,2]]

Output: 46

Constraints:

  • n == grid.length == grid[i].length
  • 1 <= n <= 50
  • 0 <= grid[i][j] <= 50
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    surfaceArea(int[][] grid)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • surfaceArea

      public int surfaceArea(int[][] grid)