summaryrefslogtreecommitdiff
path: root/2024/01
diff options
context:
space:
mode:
Diffstat (limited to '2024/01')
-rwxr-xr-x2024/01/python.py14
-rwxr-xr-x2024/01/raku.raku5
-rw-r--r--2024/01/rust/Cargo.lock7
-rw-r--r--2024/01/rust/Cargo.toml6
-rw-r--r--2024/01/rust/src/main.rs31
5 files changed, 0 insertions, 63 deletions
diff --git a/2024/01/python.py b/2024/01/python.py
deleted file mode 100755
index 425f6c7..0000000
--- a/2024/01/python.py
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/usr/bin/env python3
-
-from collections import Counter
-from fileinput import input
-
-L, R = zip(*[[int(n) for n in s.split()] for s in input()])
-
-silver = sum(abs(left - right) for left, right in zip(sorted(L), sorted(R)))
-
-L, R = Counter(L), Counter(R)
-gold = sum(n * L[n] * R[n] for n in list(L & R))
-
-print("silver:", silver)
-print("gold:", gold)
diff --git a/2024/01/raku.raku b/2024/01/raku.raku
deleted file mode 100755
index c4a44e0..0000000
--- a/2024/01/raku.raku
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/usr/bin/env raku
-
-my $ids := ([Z] lines>>.words)>>.sort>>.list;
-say "silver: ", ([Z-] $ids)>>.abs.sum;
-say "gold: ", ([<<*>>] $ids>>.Bag).kxxv.sum;
diff --git a/2024/01/rust/Cargo.lock b/2024/01/rust/Cargo.lock
deleted file mode 100644
index 7010c56..0000000
--- a/2024/01/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-01"
-version = "0.1.0"
diff --git a/2024/01/rust/Cargo.toml b/2024/01/rust/Cargo.toml
deleted file mode 100644
index 0e9bfaa..0000000
--- a/2024/01/rust/Cargo.toml
+++ /dev/null
@@ -1,6 +0,0 @@
-[package]
-name = "aoc_2024-01"
-version = "0.1.0"
-edition = "2021"
-
-[dependencies]
diff --git a/2024/01/rust/src/main.rs b/2024/01/rust/src/main.rs
deleted file mode 100644
index c1648cf..0000000
--- a/2024/01/rust/src/main.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-use std::collections::HashMap;
-use std::io;
-
-fn main() -> io::Result<()> {
- let (mut ls, mut rs): (Vec<u64>, Vec<u64>) = io::stdin()
- .lines()
- .map(|line| {
- line.unwrap()
- .split_whitespace()
- .map(|s| s.parse().unwrap())
- .collect::<Vec<u64>>()
- })
- .map(|xs| (xs[0], xs[1]))
- .unzip();
-
- ls.sort_unstable();
- rs.sort_unstable();
-
- let mut counts = HashMap::new();
- rs.iter().for_each(|&x| {
- *counts.entry(x).or_insert(0) += 1;
- });
-
- let silver: u64 = ls.iter().zip(rs).map(|(x, y)| x.abs_diff(y)).sum();
- let gold: u64 = ls.iter().map(|x| x * counts.get(x).unwrap_or(&0)).sum();
-
- println!("silver: {silver}");
- println!("gold: {gold}");
-
- return Ok(());
-}