保持城市天际线-c语言

给你一座由 n x n 个街区组成的城市,每个街区都包含一座立方体建筑。给你一个下标从 0 开始的 n x n 整数矩阵 grid ,其中 grid[r][c] 表示坐落于 r 行 c 列的建筑物的 高度 。

城市的 天际线 是从远处观察城市时,所有建筑物形成的外部轮廓。从东、南、西、北四个主要方向观测到的 天际线 可能不同。

我们被允许为 任意数量的建筑物 的高度增加 任意增量(不同建筑物的增量可能不同) 。 高度为 0 的建筑物的高度也可以增加。然而,增加的建筑物高度 不能影响 从任何主要方向观察城市得到的 天际线 。

在 不改变 从任何主要方向观测到的城市 天际线 的前提下,返回建筑物可以增加的 最大高度增量总和 。

输入:grid = [[3,0,8,4],[2,4,5,7],[9,2,6,3],[0,3,1,0]]
输出:35
解释:建筑物的高度如上图中心所示。
用红色绘制从不同方向观看得到的天际线。
在不影响天际线的情况下,增加建筑物的高度:
gridNew = [ [8, 4, 8, 7],
[7, 4, 7, 7],
[9, 4, 8, 7],
[3, 3, 3, 3] ]

示例 2:

输入:grid = [[0,0,0],[0,0,0],[0,0,0]]
输出:0
解释:增加任何建筑物的高度都会导致天际线的变化。
解题代码如下:

int maxIncreaseKeepingSkyline(int** grid, int gridSize, int* gridColSize){int n=gridSize,m=gridColSize[0];int i=0,j;int a[n],b[m];for(i=0;i<n;i++){int max=grid[i][0];for(j=0;j<m;j++){if(grid[i][j]>max){max=grid[i][j];}a[i]=max;}}for(i=0;i<m;i++){int max=grid[0][i];for(j=0;j<n;j++){if(grid[j][i]>max){max=grid[j][i];}b[i]=max;}}int sum=0;for(i=0;i<n;i++){for(j=0;j<m;j++){int num=grid[i][j];if(a[i]>b[j]){sum=sum+b[j]-num;}else{sum=sum+a[i]-num;}}}return sum;}

保持城市天际线-c语言相关推荐

  1. 东莞城院c语言上机报告,浙大城市学院c语言上机试题

    浙大城市学院c语言上机试题 2010 -2011学年第 2 学期 实 验 报 告 实验课程名称 C语言程序设计基础实验 专 业 班 级 土木 1003 学 生 姓 号 31003290 学 生 姓 名 ...

  2. l360清零软件无响应_张店楼顶商业广告全面“清零”!城市“天际线”颜值再刷新...

    历时82天,拆除大型广告牌.字1558处,张店楼顶商业广告全面"清零"!城市"天际线"颜值再刷新. 为打造焕然一新的城乡环境面貌,彻底清除高空楼顶广告这个一直悬 ...

  3. 807. 保持城市天际线

    链接:807. 保持城市天际线 题解: class Solution { public:int maxIncreaseKeepingSkyline(vector<vector<int> ...

  4. 城市天际线 for Mac城市建造类游戏

    城市天际线 for Mac是Mac平台上一款城市模拟建造类游戏,玩家在游戏需要建造和管理一个城市.城市中的所有交通路线,楼房,公园,工厂,娱乐设施等等都需要由你来搭建管理.城市天际线 mac游戏画面制 ...

  5. 【LeetCode】每日一题——保持城市天际线

    目录 题目 一起来读题目 主要思路: 代码实现 写法一: 代码解读 结果: 写法二:列表推导式写法 参考文章: 题目 哈哈是不是看懵了啊,俗话说的好:不会写的题目,好好读多几次题目 读不懂,没关系,我 ...

  6. 【力扣时间】【807】【中等】保持城市天际线

    保持城市天际线 1.先看题 2.审题 3.思路 4.开工! 5.解读 6.提交 7.咀嚼 8.他人的智慧 9.总结 城市天际线? 1.先看题 点我看题 题目的表述并不清楚,而且已经开始铺陷阱了.所要求 ...

  7. 计算机模拟需要什么配置电脑,城市天际线配置要求 最低电脑配置要求

    喜欢城市类模拟经营游戏的小伙伴们注意了,由开发商Paradox InTeractive制作的SIM新作<城市天际线>已经在今天正式上市了.这款游戏的玩法和我们熟悉的模拟城市.特大城市非常相 ...

  8. 807.保持城市天际线

    题目描述 给你一座由 n x n 个街区组成的城市,每个街区都包含一座立方体建筑.给你一个下标从 0 开始的 n x n 整数矩阵 grid ,其中 grid[r][c] 表示坐落于 r 行 c 列的 ...

  9. Java实现 LeetCode 807 保持城市天际线 (暴力)

    807. 保持城市天际线 在二维数组grid中,grid[i][j]代表位于某处的建筑物的高度. 我们被允许增加任何数量(不同建筑物的数量可能不同)的建筑物的高度. 高度 0 也被认为是建筑物. 最后 ...

最新文章

  1. Linux中的环境变量知多少?
  2. Zuul:构建高可用网关之多维度限流
  3. mysql 创建job_MySQL 索引创建
  4. 如何对DevExpress ASPxGridView进行分组排序?
  5. 【POJ - 3041】Asteroids (二分图,最小点覆盖)
  6. python实现485通讯_Python编程实现USB转RS485串口通信
  7. 创建Android Virtual Device
  8. Java添加事件监听的四种方法代码实例
  9. MobaSSH SSH server for Windows - Download Home Edition
  10. sentry-前端应用监控工具
  11. 谷歌chrome 71 flash 添加问题的解决方案(chrome禁用添加允许flash的选项)
  12. 如何使用小米手机的便签功能
  13. html 重力感应效果,HTML5 重力感应效果,实现摇一摇效果
  14. unity地图路径编辑器
  15. 线段树(lazy用法)
  16. python常用的几个库_盘点Python常用的20个库
  17. 苏世民:顶尖领导者的52条法则
  18. 【闲聊】人生如梦,一樽还酹江月
  19. Unity - 搬砖日志 - 打开项目时崩溃/或是运行不起unity的日志
  20. 本计算机家庭组的用户名,家庭组

热门文章

  1. ROS人机交互软件免费分享
  2. 素因子分解表+重复元素全排列问题
  3. 请写出空间计量模型stata代码
  4. 7个常见的数据分析项目模型!赶紧收藏!
  5. iOS开发二维码生成(一)
  6. 写出常用的5个linux命令 并解释,Linux系统介绍(五)常用命令
  7. 他山之石|大厂实时数仓建设全解析
  8. 无线智能光伏监测系统
  9. Bobi‘s Blog个人博客
  10. nginx免安装版资源,config配置详解