From f4a7b06d4792840dd658504319c2c42c134da411 Mon Sep 17 00:00:00 2001 From: Bert Peters Date: Fri, 14 Dec 2018 11:42:44 +0100 Subject: [PATCH] Reuse input helper. --- 2018/src/day08.rs | 7 +++---- 2018/src/day11.rs | 11 +++-------- 2018/src/day12.rs | 1 - 3 files changed, 6 insertions(+), 13 deletions(-) diff --git a/2018/src/day08.rs b/2018/src/day08.rs index 9d876c9..9df06e9 100644 --- a/2018/src/day08.rs +++ b/2018/src/day08.rs @@ -1,6 +1,7 @@ use std::io::Read; use common::Solution; +use common::read_single_input; #[derive(Default)] pub struct Day08 {} @@ -58,8 +59,7 @@ impl Day08 { impl Solution for Day08 { fn part1(&mut self, input: &mut Read) -> String { - let mut data = String::new(); - input.read_to_string(&mut data).unwrap(); + let data: String = read_single_input(input); let data: Vec = data.trim().split(" ").map(|x| x.parse().unwrap()).collect(); let (result, _) = total1(&data); @@ -68,8 +68,7 @@ impl Solution for Day08 { } fn part2(&mut self, input: &mut Read) -> String { - let mut data = String::new(); - input.read_to_string(&mut data).unwrap(); + let data: String = read_single_input(input); let data: Vec = data.trim().split(" ").map(|x| x.parse().unwrap()).collect(); let (result, _) = total2(&data); diff --git a/2018/src/day11.rs b/2018/src/day11.rs index 9c10f36..29dc86d 100644 --- a/2018/src/day11.rs +++ b/2018/src/day11.rs @@ -2,6 +2,7 @@ use std::i32; use std::io::Read; use common::Solution; +use common::read_single_input; fn power_at(serial: i32, (x, y): (i32, i32)) -> i32 { let rack_id = x + 10; @@ -23,12 +24,6 @@ impl Day11 { } } - fn read_serial(&self, input: &mut Read) -> i32 { - let mut data = String::new(); - input.read_to_string(&mut data).unwrap(); - data.trim().parse().unwrap() - } - fn compute_summed_area(&mut self, serial: i32) { self.power_grid[0][0] = power_at(serial, (1, 1)); for x in 1..300 { @@ -93,7 +88,7 @@ impl Day11 { impl Solution for Day11 { fn part1(&mut self, input: &mut Read) -> String { - let serial = self.read_serial(input); + let serial = read_single_input(input); self.compute_summed_area(serial); let (x, y, _) = self.best(3); @@ -101,7 +96,7 @@ impl Solution for Day11 { } fn part2(&mut self, input: &mut Read) -> String { - let serial = self.read_serial(input); + let serial = read_single_input(input); self.compute_summed_area(serial); let mut best_result = 0; let mut best_option = None; diff --git a/2018/src/day12.rs b/2018/src/day12.rs index 4489e47..53f25c5 100644 --- a/2018/src/day12.rs +++ b/2018/src/day12.rs @@ -2,7 +2,6 @@ use std::collections::HashMap; use std::io::BufRead; use std::io::BufReader; use std::io::Read; -use std::iter::FromIterator; use common::Solution;