my solutions to advent of code
aoc advent-of-code

that's nice

aylac.top f761602e bdb95867

verified
Changed files
+5 -9
2015
1
rust
src
+5 -9
2015/1/rust/src/main.rs
···
use std::{fs, ops::ControlFlow};
fn main() {
-
let input: String = match fs::read_to_string("../input.txt") {
-
Ok(input) => input,
-
_ => panic!("invalid input!!!"),
-
};
+
let input = fs::read_to_string("../input.txt").expect("invalid input");
let input = input.trim();
let part1 = input.chars().fold(0, |floor, v| {
···
}) + floor
});
-
println!("{}", part1.to_string());
+
println!("{}", part1);
-
let part2 = input.chars().try_fold((0, 1), |state, v| {
-
let (floor, step) = state;
+
let part2 = input.chars().try_fold((0, 1), |(floor, step), v| {
let floor = (match v {
'(' => 1,
')' => -1,
···
});
let part2 = match part2 {
ControlFlow::Break(part2) => part2,
-
_ => panic!("something bad happened"),
+
ControlFlow::Continue(_) => panic!("bad input. never reached basement"),
};
-
println!("{}", part2.to_string());
+
println!("{}", part2);
}