解决方案


方法:数学

思路和算法

从顶部看,由该形状生成的阴影将是网格中非零值的数目。

从侧面看,由该形状生成的阴影将是网格中每一行的最大值。

从前面看,由该形状生成的阴影将是网格中每一列的最大值。

示例

例如 [[1,2],[3,4]]

  • 顶部的阴影将为 4,因为网格中有四个非零值;

  • 侧面的阴影为 2 + 4,因为第一行的最大值为 2,第二行的最大值为 4;

  • 前面的阴影是 3 + 4,因为第一列的最大值是 3,第二列的最大值是 4

复杂度分析

  • 时间复杂度:,其中 grid 的长度。

  • 空间复杂度:.