883.三维形体投影面积
在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1 立方体。
每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) 上。
现在,我们查看这些立方体在 xy、yz 和 zx 平面上的投影。
投影就像影子,将三维形体映射到一个二维平面上。
在这里,从顶部、前面和侧面看立方体时,我们会看到“影子”。
返回所有三个投影的总面积。
示例 1:
输入:[[2]]
输出:5
示例 2:
输入:[[1,2],[3,4]]
输出:17
解释:这里有该形体在三个轴对齐平面上的三个投影(“阴影部分”)。
示例 3:
输入:[[1,0],[0,2]]
输出:8
示例 4:
输入:[[1,1,1],[1,0,1],[1,1,1]]
输出:14
示例 5:
输入:[[2,2,2],[2,1,2],[2,2,2]]
输出:21
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/projection-area-of-3d-shapes
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
# 分别计算出三面投影面积并求其和
class Solution:def projectionArea(self, grid: List[List[int]]) -> int:top = sum(grid[i][j] > 0 for i in range(len(grid)) for j in range(len(grid[0]))) # 顶部投影面积为不为0的元素个数front = sum(max(i) for i in grid) # 前面投影面积为各个列表中最大元素之和side = sum(max(i) for i in zip(*grid)) # 侧面投影面积为各个列表中同一索引的最大元素之和(zip(*grid)可以将grid中相同索引的元素存放至新元组)return top + front + side
883.三维形体投影面积相关推荐
- LeetCode 883. 三维形体投影面积(数学)
文章目录 题目 方法:数学 题目 883. 三维形体投影面积 方法:数学 xyxyxy 平面的投影面积等于网格上非零数值的数目 yz\texttt{yz}yz 平面的投影面积等于网格上每一列最大数值之 ...
- LeetCode刷题之883. 三维形体投影面积
LeetCode刷题之883. 三维形体投影面积 我不知道将去向何方,但我已在路上! 时光匆匆,虽未曾谋面,却相遇于斯,实在是莫大的缘分,感谢您的到访 ! 题目: 在N*N的网格中,我们放置了一些与 ...
- 力扣——883. 三维形体投影面积(Java、JavaScript、C实现)
三维形体投影面积 在 n x n 的网格 grid 中,我们放置了一些与 x,y,z 三轴对齐的 1 x 1 x 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 ( ...
- 883. 三维形体投影面积
在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) 上. 现在,我们查 ...
- LeetCode——883. 三维形体投影面积
文章目录 题目描述 答案 我的答案 官方答案 数学 题目描述 在 n x n 的网格 grid 中,我们放置了一些与 x,y,z 三轴对齐的 1 x 1 x 1 立方体. 每个值 v = grid[i ...
- 【Leetcode】883. 三维形体投影面积
题目描述: 在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) 上. ...
- leetcode 883. 三维形体投影面积(python)
题目链接 题目描述: 在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j ...
- 【日常训练】883. 三维形体投影面积
代码 在 n x n 的网格 grid 中,我们放置了一些与 x,y,z 三轴对齐的 1 x 1 x 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) ...
- 【C语言刷LeetCode】883. 三维形体投影面积(E)
[ 格 grid 中,我们放置了一些与 x,y,z 三轴对齐的 1 x 1 x 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) 上. 现在,我们查看这 ...
最新文章
- javamail gmail
- Scala学习第五天数组
- 小米线刷包需要解压么_【连载】刷机教程之小米手机通用线刷教程
- 最短网络(信息学奥赛一本通-T1350)
- 爬虫-36kr-使用xpath爬取数据-part1-提取接口所需的6开头的数字-拼接下一个接口的路径
- 一款JS+CSS实现的无缝平滑图片滚动代码
- flask+jsonp跨域前后台交互(接口初体验)
- indesign教程,了解基本文本格式
- 凸优化有关的数值线性代数知识 2求解已经因式分解的矩阵的线性方程组
- steam加速_追梦加速器:Steam一周销量前十榜单,你的游戏排第几?
- SQL Server 数据库之连接查询
- 武汉大学计算机学院电子与通信工程,武汉大学电子信息学院信息与通信工程
- 一种考虑时空关联的深度学习短时交通流预测方法
- 练习打字程序游戏 c语言,VS2017 C语言制做打字练习游戏
- ClickHouse 创建数据库建表视图字典 SQL
- Oracle试卷02
- eas bos 获取编码规则
- 时间戳90K是什么意思?
- mysql使用exists、in、distinct区别
- MARG航姿系统的基本理论及工作原理