Completed Day 1

A bit behind! :o
This commit is contained in:
2018-12-12 00:04:49 -05:00
commit 4b4ba0602d
7 changed files with 1021 additions and 0 deletions

31
src/day1.rs Normal file
View File

@@ -0,0 +1,31 @@
use std::error::Error;
use std::fs::File;
use std::io::{BufRead, BufReader};
const INPUT: &str = "inputs/1.txt";
pub fn solve() -> Result<i32, Box<Error>> {
calculate_resulting_frequency(INPUT)
}
fn calculate_resulting_frequency(filename: &str) -> Result<i32, Box<Error>> {
let mut freq: i32 = 0;
let file = File::open(filename)?;
for line in BufReader::new(file).lines() {
let adjustment: i32 = line?.parse()?;
freq += adjustment;
}
Ok(freq)
}
#[cfg(test)]
mod tests {
use super::*;
const TEST_INPUT: &str = "inputs/1_test.txt";
#[test]
fn finds_resulting_frequency() {
assert_eq!(calculate_resulting_frequency(TEST_INPUT).unwrap(), 3);
}
}

6
src/main.rs Normal file
View File

@@ -0,0 +1,6 @@
mod day1;
fn main() {
println!("Day 1:");
println!("{}", day1::solve().unwrap());
}