diff options
Diffstat (limited to 'src/bin')
-rw-r--r-- | src/bin/day21.rs | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/bin/day21.rs b/src/bin/day21.rs index c195c08..c9abb76 100644 --- a/src/bin/day21.rs +++ b/src/bin/day21.rs @@ -1,6 +1,6 @@ use std::io::{self, Read}; -#[derive(Debug, Clone, Copy)] +#[derive(Clone, Copy)] enum Operation { SwapPosition(usize, usize), SwapLetter(u8, u8), @@ -34,7 +34,7 @@ impl Operation { }, Operation::RotateLetter(a) => { let mut n = 1 + slice.iter().position(|&x| x == a).unwrap(); - if n >= 4 { n += 1 } + if n >= 5 { n += 1 } n %= slice.len(); slice.reverse(); slice[0..n].reverse(); @@ -91,9 +91,7 @@ fn solve(password: &str, input: &str) -> String { let mut password = password.as_bytes().to_owned(); for operation in input.lines().map(Operation::from) { - print!("{} ", std::str::from_utf8(&password).unwrap()); operation.apply(&mut password); - println!("{:^20} {}", format!("{:?}", operation), std::str::from_utf8(&password).unwrap()); } String::from_utf8(password).unwrap() |