Skip to content

Commit 538bbeb

Browse files
author
ruislan
committed
solved q807
1 parent a31d671 commit 538bbeb

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed

src/q/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -381,6 +381,7 @@ mod q797;
381381
mod q803;
382382
mod q804;
383383
mod q806;
384+
mod q807;
384385
mod q810;
385386
mod q811;
386387
mod q819;

src/q/q807.rs

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
use crate::q::Solution;
2+
3+
#[allow(unused)]
4+
impl Solution {
5+
pub fn max_increase_keeping_skyline(grid: Vec<Vec<i32>>) -> i32 {
6+
// 方法1
7+
// 求出行和列的最大值,然后迭代每个单元,取当前单元行列最大值的最小值
8+
// AC 0ms 2.3mb 133/133
9+
let mut n = grid.len();
10+
let mut m = grid[0].len();
11+
let mut row_max = vec![0; n];
12+
let mut col_max = vec![0; m];
13+
for row in 0..n {
14+
row_max[row] = *grid[row].iter().max().unwrap();
15+
}
16+
for col in 0..m {
17+
let mut max = 0;
18+
for row in 0..n {
19+
max = max.max(grid[row][col]);
20+
}
21+
col_max[col] = max;
22+
}
23+
let mut ans = 0;
24+
for row in 0..n {
25+
for col in 0..m {
26+
ans += row_max[row].min(col_max[col]) - grid[row][col];
27+
}
28+
}
29+
ans
30+
}
31+
}

0 commit comments

Comments
 (0)