LeetCode #807. Max Increase to Keep City Skyline 保持城市天际线

2023-03-03,,

https://leetcode-cn.com/problems/max-increase-to-keep-city-skyline/

执行用时 : 3 ms, 在Max Increase to Keep City Skyline的Java提交中击败了95.31% 的用户 内存消耗 : 37.7 MB, 在Max Increase to Keep City Skyline的Java提交中击败了92.13% 的用户

最直接的思路:

    获取矩阵的每一行最大值和每一列最大值
    根据上述最大值来“提高”建筑
 class Solution {
public int maxIncreaseKeepingSkyline(int[][] grid) {
int result = 0;
int rowSize = grid.length;
// rowMax 每行最大数值
int[] rowMax = new int[rowSize]; int colSize = grid[0].length;
// colMax 每列最大数值
int[] colMax = new int[colSize]; int i = 0;
int j = 0; for (i = 0; i < rowSize; i++) {
rowMax[i] = 0;
for (j = 0; j < colSize; j++) {
if (grid[i][j] > rowMax[i]) {
rowMax[i] = grid[i][j];
}
}
} for (j = 0; j < colSize; j++) {
colMax[j] = 0;
for (i = 0; i < rowSize; i++) {
if (grid[i][j] > colMax[j]){
colMax[j] = grid[i][j];
}
}
} for (i = 0; i < rowSize; i++) {
for (j = 0; j < colSize; j++) {
if (rowMax[i] > colMax[j]) {
result += colMax[j] - grid[i][j];
} else {
result += rowMax[i] - grid[i][j];
}
}
} return result;
}
}

LeetCode #807. Max Increase to Keep City Skyline 保持城市天际线的相关教程结束。

《LeetCode #807. Max Increase to Keep City Skyline 保持城市天际线.doc》

下载本文的Word格式文档,以方便收藏与打印。