add day 3 claude solution
This commit is contained in:
@@ -34,6 +34,29 @@ fn main() {
|
||||
.collect();
|
||||
|
||||
part1(&data);
|
||||
|
||||
part2_claude(binding);
|
||||
}
|
||||
|
||||
fn part2_claude(input: String) {
|
||||
let result = input
|
||||
.lines()
|
||||
.map(parse_triple)
|
||||
.tuples()
|
||||
.flat_map(|((a0, a1, a2), (b0, b1, b2), (c0, c1, c2))| {
|
||||
[(a0, b0, c0), (a1, b1, c1), (a2, b2, c2)]
|
||||
})
|
||||
.filter(|(a, b, c)| a + b > *c && a + c > *b && b + c > *a)
|
||||
.count();
|
||||
|
||||
println!("{result}");
|
||||
}
|
||||
|
||||
fn parse_triple(line: &str) -> (usize, usize, usize) {
|
||||
line.split_whitespace()
|
||||
.map(|s| s.parse().unwrap())
|
||||
.next_tuple()
|
||||
.unwrap()
|
||||
}
|
||||
|
||||
fn part1(data: &[Vec<usize>]) {
|
||||
|
||||
Reference in New Issue
Block a user