From fe0e9a576c68accc836af24c05ce6b79d556bd6a Mon Sep 17 00:00:00 2001 From: Logan Hunt Date: Thu, 1 Dec 2022 00:08:21 -0700 Subject: Fix day count --- day-00/.gitkeep | 0 day-00/sol.sh | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 day-00/.gitkeep create mode 100755 day-00/sol.sh (limited to 'day-00') diff --git a/day-00/.gitkeep b/day-00/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/day-00/sol.sh b/day-00/sol.sh new file mode 100755 index 0000000..441efb2 --- /dev/null +++ b/day-00/sol.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +# USAGE: ./sol.sh (n: top elves) + +NUM_ELVES=${1:-3} + +declare -a ELVES=() +for (( i = 0; i<$NUM_ELVES; i++)) +do + ELVES+=(0) +done + + +add_to_elves () { + local max=$1 + for (( i = 0; i<${NUM_ELVES}; i++)); + do + local tmp="${ELVES[$i]}"; + if [[ $max -ge $tmp ]]; + then + ELVES[$i]=$max + max=$tmp + fi + done +} + +CURRENT_ELF=0 +while read -r line +do + if [[ -z "$line" ]]; + then + add_to_elves $CURRENT_ELF + CURRENT_ELF=0 + else + CURRENT_ELF=$((CURRENT_ELF+line)) + fi +done < input + +echo "MAX ELF = ${ELVES[0]}" +echo "sum(TOP $NUM_ELVES ELVES) = $(printf "%s\n" $(echo "${ELVES[*]}") | paste -sd+ - | bc)" -- cgit v1.2.3-70-g09d2