博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【leetcode】892. Surface Area of 3D Shapes
阅读量:5774 次
发布时间:2019-06-18

本文共 866 字,大约阅读时间需要 2 分钟。

题目如下:

解题思路:对于v = grid[i][j],其表面积为s = 2 + v*4 。接下来只要在判断其相邻四个方向有没有放置立方体,有的话减去重合的面积即可。

代码如下:

class Solution(object):    def surfaceArea(self, grid):        """        :type grid: List[List[int]]        :rtype: int        """        res = 0        for i in range(len(grid)):            for j in range(len(grid[i])):                if grid[i][j] == 0:                    continue                area = 2 + 4 * grid[i][j]                if i-1 >= 0:                    area -= min(grid[i-1][j],grid[i][j])                if j-1 >= 0:                    area -= min(grid[i][j],grid[i][j-1])                if i + 1 < len(grid):                    area -= min(grid[i][j],grid[i+1][j])                if j + 1 < len(grid[i]):                    area -= min(grid[i][j],grid[i][j+1])                res += area        return res

 

转载于:https://www.cnblogs.com/seyjs/p/9537702.html

你可能感兴趣的文章
Linux 常用命令
查看>>
NodeJS 工程师必备的 8 个工具
查看>>
CSS盒模型
查看>>
ng2路由延时加载模块
查看>>
使用GitHub的十个最佳实践
查看>>
全面了解大数据“三驾马车”的开源实现
查看>>
脱离“体验”和“安全”谈盈利的游戏运营 都是耍流氓
查看>>
慎用!BLEU评价NLP文本输出质量存在严重问题
查看>>
基于干净语言和好奇心的敏捷指导
查看>>
Node.js 2017企业用户调查结果发布
查看>>
“软”苹果水逆的一周:杂志服务崩溃,新机型遭泄露,芯片首架离职
查看>>
JAVA的优势就是劣势啊!
查看>>
ELK实战之logstash部署及基本语法
查看>>
帧中继环境下ospf的使用(点到点模式)
查看>>
BeanShell变量和方法的作用域
查看>>
LINUX下防恶意扫描软件PortSentry
查看>>
由数据库对sql的执行说JDBC的Statement和PreparedStatement
查看>>
springmvc+swagger2
查看>>
软件评测-信息安全-应用安全-资源控制-用户登录限制(上)
查看>>
我的友情链接
查看>>