跳到主要内容

883.三维形体投影面积

链接:883.三维形体投影面积
难度:Easy
标签:几何、数组、数学、矩阵
简介:返回 所有三个投影的总面积 。

题解 1 - cpp

  • 编辑时间:2022-03-22
  • 执行用时:8ms
  • 内存消耗:9.1MB
  • 编程语言:cpp
  • 解法介绍:统计每个投影面积的大小。
class Solution {
public:
int projectionArea(vector<vector<int>>& grid) {
int n = grid.size(), x = 0, y = 0, z = 0;
// z
for (int row = 0; row < n; row++) {
for (int col = 0; col < n; col++) {
if (grid[row][col] != 0) z++;
}
}
// y
for (int row = 0; row < n; row++) {
int h = 0;
for (int col = 0; col < n; col++) {
h = max(h, grid[row][col]);
}
y += h;
}
// x
for (int col = 0; col < n; col++) {
int h = 0;
for (int row = 0; row < n; row++) {
h = max(h, grid[row][col]);
}
x += h;
}
return x + y + z;
}
};