From 726bfebca0aa12a0a7b1b811bc50f2a1e730eaa0 Mon Sep 17 00:00:00 2001 From: bdnugget Date: Sun, 7 Dec 2025 20:55:39 +0100 Subject: [PATCH] There are only 12 advent days this year --- 01/example.txt | 10 ++++++++++ 01/poop.sh | 29 ++++++++++++++++++++++++++--- 13/poop.sh | 12 ------------ 14/poop.sh | 12 ------------ 15/poop.sh | 12 ------------ 16/poop.sh | 12 ------------ 17/poop.sh | 12 ------------ 18/poop.sh | 12 ------------ 19/poop.sh | 12 ------------ 20/poop.sh | 12 ------------ 21/poop.sh | 12 ------------ 22/poop.sh | 12 ------------ 23/poop.sh | 12 ------------ 24/poop.sh | 12 ------------ 25/poop.sh | 12 ------------ 26/poop.sh | 12 ------------ 27/poop.sh | 12 ------------ 28/poop.sh | 12 ------------ 29/poop.sh | 12 ------------ 30/poop.sh | 12 ------------ 20 files changed, 36 insertions(+), 219 deletions(-) create mode 100644 01/example.txt delete mode 100755 13/poop.sh delete mode 100755 14/poop.sh delete mode 100755 15/poop.sh delete mode 100755 16/poop.sh delete mode 100755 17/poop.sh delete mode 100755 18/poop.sh delete mode 100755 19/poop.sh delete mode 100755 20/poop.sh delete mode 100755 21/poop.sh delete mode 100755 22/poop.sh delete mode 100755 23/poop.sh delete mode 100755 24/poop.sh delete mode 100755 25/poop.sh delete mode 100755 26/poop.sh delete mode 100755 27/poop.sh delete mode 100755 28/poop.sh delete mode 100755 29/poop.sh delete mode 100755 30/poop.sh diff --git a/01/example.txt b/01/example.txt new file mode 100644 index 0000000..53287c7 --- /dev/null +++ b/01/example.txt @@ -0,0 +1,10 @@ +L68 +L30 +R48 +L5 +R60 +L55 +L1 +L99 +R14 +L82 diff --git a/01/poop.sh b/01/poop.sh index 6616ebf..3478b30 100755 --- a/01/poop.sh +++ b/01/poop.sh @@ -1,12 +1,35 @@ #!/bin/env bash -set -euo pipefail +set -Eeuo pipefail -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR +trap 'echo "SHIEEEET at line ${LINENO}" >&2' ERR # Advent of Code day 01 main() { - : + dial=50 + count=0 + + while read -r line; do + dir="${line:0:1}" + num="${line:1}" + + # apply rotation + if [[ "$dir" == L ]]; then + dial=$(( dial - num )) + else + dial=$(( dial + num )) + fi + + # wrap into 0–99 + dial=$(( (dial % 100 + 100) % 100 )) + + # count zero hits + if (( dial == 0 )); then + ((count++)) + fi + done < example.txt + + printf "%d\n" "$count" } main "$@" diff --git a/13/poop.sh b/13/poop.sh deleted file mode 100755 index e081ec0..0000000 --- a/13/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 13 - -main() { - : -} - -main "$@" diff --git a/14/poop.sh b/14/poop.sh deleted file mode 100755 index 05d245f..0000000 --- a/14/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 14 - -main() { - : -} - -main "$@" diff --git a/15/poop.sh b/15/poop.sh deleted file mode 100755 index ab03569..0000000 --- a/15/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 15 - -main() { - : -} - -main "$@" diff --git a/16/poop.sh b/16/poop.sh deleted file mode 100755 index c9d75ec..0000000 --- a/16/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 16 - -main() { - : -} - -main "$@" diff --git a/17/poop.sh b/17/poop.sh deleted file mode 100755 index d1c60ad..0000000 --- a/17/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 17 - -main() { - : -} - -main "$@" diff --git a/18/poop.sh b/18/poop.sh deleted file mode 100755 index 9417f49..0000000 --- a/18/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 18 - -main() { - : -} - -main "$@" diff --git a/19/poop.sh b/19/poop.sh deleted file mode 100755 index f076340..0000000 --- a/19/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 19 - -main() { - : -} - -main "$@" diff --git a/20/poop.sh b/20/poop.sh deleted file mode 100755 index 50b5c3d..0000000 --- a/20/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 20 - -main() { - : -} - -main "$@" diff --git a/21/poop.sh b/21/poop.sh deleted file mode 100755 index f84ef73..0000000 --- a/21/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 21 - -main() { - : -} - -main "$@" diff --git a/22/poop.sh b/22/poop.sh deleted file mode 100755 index fae6182..0000000 --- a/22/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 22 - -main() { - : -} - -main "$@" diff --git a/23/poop.sh b/23/poop.sh deleted file mode 100755 index 23c5620..0000000 --- a/23/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 23 - -main() { - : -} - -main "$@" diff --git a/24/poop.sh b/24/poop.sh deleted file mode 100755 index 80029f7..0000000 --- a/24/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 24 - -main() { - : -} - -main "$@" diff --git a/25/poop.sh b/25/poop.sh deleted file mode 100755 index 3481c95..0000000 --- a/25/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 25 - -main() { - : -} - -main "$@" diff --git a/26/poop.sh b/26/poop.sh deleted file mode 100755 index 1313a67..0000000 --- a/26/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 26 - -main() { - : -} - -main "$@" diff --git a/27/poop.sh b/27/poop.sh deleted file mode 100755 index 6035306..0000000 --- a/27/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 27 - -main() { - : -} - -main "$@" diff --git a/28/poop.sh b/28/poop.sh deleted file mode 100755 index 4813cbb..0000000 --- a/28/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 28 - -main() { - : -} - -main "$@" diff --git a/29/poop.sh b/29/poop.sh deleted file mode 100755 index cbd9767..0000000 --- a/29/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 29 - -main() { - : -} - -main "$@" diff --git a/30/poop.sh b/30/poop.sh deleted file mode 100755 index 40bea40..0000000 --- a/30/poop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/env bash -set -euo pipefail - -trap 'echo "SHIEEEET at line $LINENO" >&2' ERR - -# Advent of Code day 30 - -main() { - : -} - -main "$@"