1
0
This commit is contained in:
2022-12-27 01:46:31 +00:00
parent 8fbaaa4bbc
commit e871837dc6
11 changed files with 110 additions and 86 deletions

View File

@ -1,7 +1,7 @@
use std::borrow::BorrowMut;
fn directional_scenic_score(seen: &Vec<i16>, height: i16) -> u32 {
(match seen.iter().rev().position(|x| { *x >= height }) {
(match seen.iter().rev().position(|x| *x >= height) {
None => seen.len(),
Some(x) => x + 1,
}) as u32
@ -31,7 +31,7 @@ fn main() {
tree.1 = true;
}
}
max_seen = -1;
seen.clear();
for tree in row.iter_mut().rev() {
@ -70,13 +70,16 @@ fn main() {
}
}
let n_trees_visible = grid.iter().map(|v| -> usize {
v.iter().filter(|(_, vis, _)| { *vis }).count()
}).sum::<usize>();
let n_trees_visible = grid
.iter()
.map(|v| -> usize { v.iter().filter(|(_, vis, _)| *vis).count() })
.sum::<usize>();
println!("{n_trees_visible}");
let max_scenic_score = grid.iter().map(|v| {
v.iter().map(|(_, _, score)| { score }).max().unwrap()
}).max().unwrap();
let max_scenic_score = grid
.iter()
.map(|v| v.iter().map(|(_, _, score)| score).max().unwrap())
.max()
.unwrap();
println!("{max_scenic_score}");
}