rename repo, subdir for yearly challenges

This commit is contained in:
2021-07-25 11:17:46 +02:00
parent 1806f79e14
commit 4a2318edc9
203 changed files with 212 additions and 1 deletions

55
2020/day06/ex1.bash Executable file
View File

@@ -0,0 +1,55 @@
#!/bin/bash
#
# ex1.bash: Advent2020 game, day 6/game 1.
CMD=${0##*/}
shopt -s extglob
declare -A Q=()
function reset_array() {
for elt in {a..z}; do
Q[$elt]=0
done
}
function count_array() {
local -i count
for elt in "${!Q[@]}"; do
(( Q[$elt] > 0 )) && ((count++))
done
echo $count
}
function set_array() {
local str="$1"
local c
for ((i=0; i<${#str}; ++i)); do
c=${str:$i:1}
if [[ "$c" =~ [a-z] ]]; then
Q[$c]=1
fi
done
}
declare -i people=0 group=0 count=0
function calcgroup() {
((group++))
((count += $(count_array)))
((people=0))
reset_array
}
while read -r line; do
if [[ -z "$line" ]]; then
calcgroup
continue
fi
((people++))
set_array "$line"
done
calcgroup
printf "%s : groups=%d count=%d\n" "$CMD" $group $count
exit 0