]> git.sommitrealweird.co.uk Git - advent-of-code-2019.git/blobdiff - day8/parse_image.sh
Rename days to 2 digits always
[advent-of-code-2019.git] / day8 / parse_image.sh
diff --git a/day8/parse_image.sh b/day8/parse_image.sh
deleted file mode 100644 (file)
index 638694a..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/bin/bash
-
-exec 3<input.txt
-
-declare -a layers
-
-image_width=25
-image_height=6
-
-layer_number=1
-while read -u 3 -N $((image_width*$image_height)) layer; do
-    layers[$layer_number]=$layer
-    layer_number=$((layer_number+1))
-done
-
-echo "Got $layer_number layers"
-
-get_count() {
-    digit=$1
-    data=$2
-
-    countstring="$(echo -n "$data" | sed -e 's#[^'$digit']##g;')"
-    count=${#countstring}
-
-    echo $count
-}
-
-zero_count_layer=0
-lowest_zero_count=-1
-for layer_number in ${!layers[@]}; do
-    count=$(get_count 0 ${layers[$layer_number]})
-    if [ $count -lt $lowest_zero_count ] || [ $lowest_zero_count -eq -1 ]; then
-        lowest_zero_count=$count
-        zero_count_layer=$layer_number
-    fi
-done
-
-one_count=$(get_count 1 ${layers[$zero_count_layer]})
-two_count=$(get_count 2 ${layers[$zero_count_layer]})
-
-echo "Layer $zero_count_layer has the fewest zeros ($lowest_zero_count)"
-echo "Answer of number of 1s * number of 2s: $one_count * $two_count = $((one_count * two_count))"
-
-draw_image() {
-    image=""
-    for (( y=0; y<$image_height; y++ )); do
-        offset=$(($image_width*$y))
-        for (( x=0; x<$image_width; x++ )); do
-            for (( layer=1; layer<=$layer_number; layer++ )); do
-                data=${layers[$layer]}
-                case ${data:$((offset+x)):1} in
-                    0)
-                        image+=" "
-                        continue 2
-                        ;;
-                    1)
-                        image+="#"
-                        continue 2
-                        ;;
-                esac
-            done
-            image+="."
-        done
-    done
-
-    printf "=%.0s" {0..26}
-    echo
-    for (( y=0; y<$image_height; y++ )); do
-        offset=$(($image_width*$y))
-        echo "|${image:$offset:25}|"
-    done
-    printf "=%.0s" {0..26}
-    echo
-}
-
-draw_image