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 "$@"