仅以此纪录每日LeetCode所刷题目

题目描述:

示例:

思路:

这个题如果读懂了,思路还是比较简单的,话不多说直接上图:

当时做题是中文版的,没有这张图想了好久。做完之后才发现英文版里有图...其实这个就是从四周看我们只能看到每行每列最高的建筑物,我们可以随意增加建筑物的高度,只要不改变我们所能看到的最高的高度即可。

在代码中,我首先将行和列的最高高度放在了两个数组里,之后合并在一起,从这些最高高度中的最低高度开始(有点绕口,但确是如此,如果不从他们中的最低高度开始,就与改变天际线),将最低高度所对应的行或者列的高度补齐,之后将这一行或者列的高度设为101,这样之后补齐别的行或者列的时候就不会涉及到已经补齐过的位置。补齐的高度差值使用count记录下来。

代码:

class Solution:def maxIncreaseKeepingSkyline(self, grid: List[List[int]]) -> int:count = 0max_col = []max_row = []for i in range(len(grid)):max_row.append(max(grid[i]))for i in range(len(grid)):col = []for j in range(len(grid[0])):col.append(grid[j][i])max_col.append(max(col))max_all =  sorted(max_row + max_col)for i in range(len(max_all)):if max_all[i] in max_row:a = max_row.index(max_all[i])for j in range(len(grid[0])):if grid[a][j] != 101:count += (max_all[i] - grid[a][j])grid[a][j] = 101max_row[a] = 101else:b = max_col.index(max_all[i])for k in range(len(grid)):if grid[k][b] != 101:count += (max_all[i] - grid[k][b])grid[k][b] = 101max_col[b] = 101return count

力扣每日一题(九——保持城市天际线)相关推荐

  1. 【JAVA】交错字符串——力扣每日一题(六)(2020.07.18)

    目录 题目:97. 交错字符串 思路 如果你从本文中学习到丝毫知识,那么请您点点关注.点赞.评论和收藏 大家好,我是爱做梦的鱼,我是东北大学大数据实验班大三的小菜鸡,非常渴望优秀,羡慕优秀的人,个人博 ...

  2. leetcode 力扣每日一题系列详解——总目录

    这是总目录,该系列持续更新中........ leetcode 力扣每日一题系列详解--总目录

  3. 【爬虫】力扣每日一题每天自动邮件提醒!!!

    使用python实现了一个力扣每日一题每天自动邮件提醒的小爬虫,小但实用!!! 文章目录 A.需求来源与分析 B.技术角度分析 C.具体分析步骤 1.接口协议分析 2.发邮件 3.写crontab放服 ...

  4. 力扣每日一题每天自动邮件提醒

    A.需求来源与分析 需求来源于生活,对于只是偶尔有兴趣做做题的我,力扣的每日一题对我一直有以下的不便: 太简单不想做,需要花太多时间的不想做,每天打开力扣其实只是想看一下是什么题,有意思才做. 看题需 ...

  5. 力扣每日一题:1720.解码异或后的数组 python异或操作

    1720.解码异或后的数组 https://leetcode-cn.com/problems/decode-xored-array/ 难度:简单 题目: 未知 整数数组 arr 由 n 个非负整数组成 ...

  6. LeetCode 力扣每日一题 488.祖玛游戏

    题目描述: 你正在参与祖玛游戏的一个变种. 在这个祖玛游戏变体中,桌面上有 一排 彩球,每个球的颜色可能是:红色 'R'.黄色 'Y'.蓝色 'B'.绿色 'G' 或白色 'W' .你的手中也有一些彩 ...

  7. 力扣每日一题——两数相加II

    发现做的题难度始终不高,今天Leecode给了一个稍微难一点的题目.(前两天没更是因为去拔牙了~~>_<~~) 给你两个 非空 链表来代表两个非负整数.数字最高位位于链表开始位置.它们的每 ...

  8. 2022.1.4 力扣-每日一题-猫和老鼠

    题目描述: 两位玩家分别扮演猫和老鼠,在一张 无向 图上进行游戏,两人轮流行动. 图的形式是:graph[a] 是一个列表,由满足 ab 是图中的一条边的所有节点 b 组成. 老鼠从节点 1 开始,第 ...

  9. 力扣每日一题——独一无二出现的次数

    难度:简单 题目: 给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数. 如果每个数的出现次数都是独一无二的,就返回 true:否则返回 false. 示例 1: 输入:arr = [1,2 ...

最新文章

  1. [给12306支招]取消车票预订-采用全额预售(充值)
  2. 一文读懂CV中的注意力机制
  3. html5添加随机率,HTML5 canvas  绘制随机曲线 并实现放大功能
  4. for循环中new的对象什么时候被回收_你真的了解JS里的 new 吗?
  5. python消息队列框架持久化_消息队列如果持久化到数据库的话,相对于直接操作数据库有啥优势?...
  6. tomcat linux环境变量,linux系统为什么需要配置tomcat环境变量
  7. 根据大小分割大文本_场景文本检测—CTPN算法介绍
  8. 关于Arduino 步进电机Stepper库的一些想法
  9. oracle批量替换保留字,常见的oracle保留字
  10. django03_表单(forms.ModelForm)(login前后台)
  11. java编写一个彩票开奖的模拟程序.游戏共有两种玩法,一种是21选5,即玩家输入5个1到21内的不重复的数。另外一种玩法是6+1玩法,即要求玩家输入7个整数,代表所购买的彩票号码,最后一个是特码。
  12. 关于android studio的配置记录
  13. 慕课python第六周测验答案_大学慕课2020Python编程基础章节测验答案
  14. 2013Esri全球用户大会QA之GIS发展状况和趋势
  15. [从源码学设计]蚂蚁金服SOFARegistry之服务上线
  16. 英语单词发音中/s/后的/p/,/t/,/k//tr/什么时候读作/b/,/d/,/g/,/dr/?
  17. canvas画布调节字符间距
  18. python面向对象之抽象类
  19. Word Rotator‘s Distance——WRD算法应用
  20. 最全的解酒方法-----让你千杯不...

热门文章

  1. python彩蛋_Python的2个彩蛋
  2. 数据库原理及应用-李唯唯主编-实验3-4
  3. 日本人的姓及一些姓氏的读法(转)
  4. 全国大学生智能汽车竞赛图像采集处理上位机开源!
  5. 准确的找到BAT实习机会~我入职了腾讯
  6. 华为实验17-ospf多区域配置
  7. 如何删除word中页眉的横线
  8. Echarts使用二:全国地图与各省市地图联动
  9. 飞利浦净化器还能走多远
  10. 频宽、带宽和频带关系