Started day 3
This commit is contained in:
50
src/day3/mod.rs
Normal file
50
src/day3/mod.rs
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
use std::{fs::File, io::Read};
|
||||||
|
|
||||||
|
fn read_file(file: &str) -> String {
|
||||||
|
let mut directory = "/home/jason/Programming/Rust/aoc2025/src/day3/".to_owned();
|
||||||
|
directory.push_str(file);
|
||||||
|
let mut handle = File::open(directory).unwrap();
|
||||||
|
let mut file = String::new();
|
||||||
|
handle.read_to_string(&mut file).unwrap();
|
||||||
|
file
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn part_1(file: &str) -> u64{
|
||||||
|
let data = read_file(file);
|
||||||
|
|
||||||
|
let mut batteries: Vec<Vec<u8>> = Vec::new();
|
||||||
|
|
||||||
|
for row in data.lines() {
|
||||||
|
let mut rowvec = Vec::new();
|
||||||
|
for c in row.chars() {
|
||||||
|
rowvec.push(c.to_digit(10).unwrap() as u8);
|
||||||
|
}
|
||||||
|
batteries.push(rowvec);
|
||||||
|
}
|
||||||
|
|
||||||
|
for bank in batteries {
|
||||||
|
let mut first_digit = 0;
|
||||||
|
let mut second_digit = 0;
|
||||||
|
let mut bank_iter = bank.iter().peekable();
|
||||||
|
|
||||||
|
loop {
|
||||||
|
let current = bank_iter.next().unwrap();
|
||||||
|
let next = bank_iter.peek();
|
||||||
|
match next {
|
||||||
|
Some(_) => {},
|
||||||
|
None => {},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
0
|
||||||
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use super::*;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn day_three_part_1() {
|
||||||
|
assert_eq!(part_1("test.txt"), 357);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
mod day3;
|
||||||
mod day6;
|
mod day6;
|
||||||
mod day7;
|
mod day7;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user