2023-15: Implement part two
This commit is contained in:
parent
5444a86e22
commit
672d196e2a
|
@ -11,7 +11,7 @@ pub struct DaySolution ;
|
||||||
impl Solution for DaySolution {
|
impl Solution for DaySolution {
|
||||||
|
|
||||||
fn input_path(&self) -> &'static str {
|
fn input_path(&self) -> &'static str {
|
||||||
"input/2023/day_15/input_test.txt"
|
"input/2023/day_15/input.txt"
|
||||||
}
|
}
|
||||||
|
|
||||||
fn part_one(&self) -> String {
|
fn part_one(&self) -> String {
|
||||||
|
|
|
@ -18,8 +18,6 @@ pub fn part_two(input_lines: Vec<String>) -> String {
|
||||||
let parsed_seq = parse_sequence(seq);
|
let parsed_seq = parse_sequence(seq);
|
||||||
let hash = hash_sequence(parsed_seq[0].clone());
|
let hash = hash_sequence(parsed_seq[0].clone());
|
||||||
|
|
||||||
println!("{}: {:?}", hash, parsed_seq.clone());
|
|
||||||
|
|
||||||
if parsed_seq[1] == "=" {
|
if parsed_seq[1] == "=" {
|
||||||
let mut lenses = boxes.get(&hash).unwrap().clone();
|
let mut lenses = boxes.get(&hash).unwrap().clone();
|
||||||
let mut found: bool = false;
|
let mut found: bool = false;
|
||||||
|
@ -51,14 +49,15 @@ pub fn part_two(input_lines: Vec<String>) -> String {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
println!();
|
let mut res = 0;
|
||||||
for (k, v) in &boxes {
|
for i in 0..256 {
|
||||||
if v.len() > 0 {
|
let lenses = boxes.get(&i).unwrap().clone();
|
||||||
println!("{}: {:?}", k, v);
|
for (j, lens) in lenses.iter().enumerate() {
|
||||||
|
res += (i + 1) * (j + 1) * lens.1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String::from("Not implemented")
|
res.to_string()
|
||||||
}
|
}
|
||||||
|
|
||||||
fn hash_sequence(sequence: String) -> usize {
|
fn hash_sequence(sequence: String) -> usize {
|
||||||
|
|
Loading…
Reference in New Issue