From 16670f26a5f9d484300d2a232f6cf137a0836bab Mon Sep 17 00:00:00 2001 From: Stephen Waits Date: Sat, 12 Dec 2020 06:22:43 -0800 Subject: [PATCH] condense day 12 by combining pattern match arms Signed-off-by: Stephen Waits --- src/day12.rs | 23 ++++------------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/src/day12.rs b/src/day12.rs index ccf5100..49a2852 100644 --- a/src/day12.rs +++ b/src/day12.rs @@ -45,34 +45,19 @@ fn navigate2(data: &str) -> usize { "S" => wpt_n -= dist, "E" => wpt_e += dist, "W" => wpt_e -= dist, - "L" => match dist { - 270 => { - wpt_e = -wpt_e; - mem::swap(&mut wpt_n, &mut wpt_e); - } - 180 => { - wpt_n = -wpt_n; - wpt_e = -wpt_e; - } - 90 => { + "L" | "R" => match (dir, dist) { + ("L", 90) | ("R", 270) => { wpt_n = -wpt_n; mem::swap(&mut wpt_n, &mut wpt_e); } - _ => panic!("bad direction!"), - }, - "R" => match dist { - 90 => { + ("L", 270) | ("R", 90) => { wpt_e = -wpt_e; mem::swap(&mut wpt_n, &mut wpt_e); } - 180 => { + (_, 180) => { wpt_n = -wpt_n; wpt_e = -wpt_e; } - 270 => { - wpt_n = -wpt_n; - mem::swap(&mut wpt_n, &mut wpt_e); - } _ => panic!("bad direction!"), }, "F" => {