From 86bac31392a76da84817eec020d2b84d099b3cc1 Mon Sep 17 00:00:00 2001 From: mhsn Date: Wed, 18 Mar 2026 21:48:13 +0000 Subject: add other challenges support --- 2024/02/rust/Cargo.lock | 7 ------- 2024/02/rust/Cargo.toml | 6 ------ 2024/02/rust/src/main.rs | 33 --------------------------------- 3 files changed, 46 deletions(-) delete mode 100644 2024/02/rust/Cargo.lock delete mode 100644 2024/02/rust/Cargo.toml delete mode 100644 2024/02/rust/src/main.rs (limited to '2024/02/rust') diff --git a/2024/02/rust/Cargo.lock b/2024/02/rust/Cargo.lock deleted file mode 100644 index f3a3299..0000000 --- a/2024/02/rust/Cargo.lock +++ /dev/null @@ -1,7 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 4 - -[[package]] -name = "aoc_2024-02" -version = "0.1.0" diff --git a/2024/02/rust/Cargo.toml b/2024/02/rust/Cargo.toml deleted file mode 100644 index 6030837..0000000 --- a/2024/02/rust/Cargo.toml +++ /dev/null @@ -1,6 +0,0 @@ -[package] -name = "aoc_2024-02" -version = "0.1.0" -edition = "2021" - -[dependencies] diff --git a/2024/02/rust/src/main.rs b/2024/02/rust/src/main.rs deleted file mode 100644 index 2007837..0000000 --- a/2024/02/rust/src/main.rs +++ /dev/null @@ -1,33 +0,0 @@ -#![feature(iter_map_windows)] - -use std::io; - -fn main() { - let input: Vec> = io::stdin() - .lines() - .map(|line| { - line.unwrap() - .split_whitespace() - .map(str::parse::) - .collect() - }) - .collect::, _>>() - .unwrap(); - - let silver: usize = input.iter().filter(|&xs| all_safe(xs)).count(); - let gold: usize = input.iter().filter(|&xs| drop_safe(xs)).count(); - println!("silver: {silver}"); - println!("gold: {gold}"); -} - -fn all_safe(xs: &Vec) -> bool { - let mut diffs = xs.iter().map_windows(|&[x, y]| y - x).peekable(); - let dir = diffs.peek().unwrap_or(&1).signum(); - diffs.all(|d| (1..=3).contains(&d.abs()) && d.signum() == dir) -} - -fn drop_safe(xs: &Vec) -> bool { - (0..xs.len()) - .map(|idx| xs.split_at(idx)) - .any(|(left, right)| all_safe(&[left, &right[1..]].concat())) -} -- cgit v1.2.3