advent-of-code-2019/day9/src/main.rs

30 lines
695 B
Rust
Raw Normal View History

use std::error::Error;
use std::result;
mod intcode;
use intcode::{Intcode, read_intcode};
const INPUT: &str = "input/input.txt";
type Result<T> = result::Result<T, Box<dyn Error>>;
2019-12-16 03:50:27 +00:00
fn solve_part1() -> Result<i64> {
let mut intcode = read_intcode(INPUT)?;
let output = intcode.execute(&[1]).expect("Failed to execute intcode");
Ok(output[output.len() - 1])
}
2019-12-16 03:50:27 +00:00
fn solve_part2() -> Result<i64> {
let mut intcode = read_intcode(INPUT)?;
let output = intcode.execute(&[2]).expect("Failed to execute intcode");
Ok(output[output.len() - 1])
}
fn main() -> Result<()> {
println!("Part 1: {}", solve_part1()?);
println!("Part 2: {}", solve_part2()?);
Ok(())
}