diff --git a/day-5/src/main.rs b/day-5/src/main.rs index 26b1f29..7fbf256 100644 --- a/day-5/src/main.rs +++ b/day-5/src/main.rs @@ -17,6 +17,26 @@ fn main() -> Result<(), Box> { println!("{}", max_id?); + // Part 2 + let mut ids = input + .lines() + .map(|code| { + let (row, col) = find_seat(parse_seatcode(code)?); + Ok(row * 8 + col) + }) + .collect::, String>>()?; + ids.sort(); + + let mut previous = ids[0]; + for id in &ids[1..] { + if id - 1 != previous { + println!("{}", id); + break; + } else { + previous = *id; + } + }; + Ok(()) }