807. 保持城市天际线
题目链接:807. 保持城市天际线
代码如下:
class Solution
{
public:
int maxIncreaseKeepingSkyline(vector<vector<int>>& grid)
{
vector<int> row_max(grid.size(), 0);
vector<int> col_max(grid[0].size(), 0);
for (int i = 0; i < grid.size(); i++)
{
for (int j = 0; j < grid[0].size(); j++)
{
row_max[i] = max(row_max[i], grid[i][j]);
col_max[j] = max(col_max[j], grid[i][j]);
}
}
int res = 0;
for (int i = 0; i < grid.size(); i++)
{
for (int j = 0; j < grid[0].size(); j++)
{
res += min(row_max[i], col_max[j]) - grid[i][j];
}
}
return res;
}
};