From 34d173af6285a111e9a3fcaeb86e1ce083c4de1b Mon Sep 17 00:00:00 2001 From: Dominique Liberda Date: Sat, 3 Dec 2022 00:54:52 -0500 Subject: [PATCH] + day 2, part 2 --- 02/README.md | 9 +++++++++ 02/nyaa.sh | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 02/README.md create mode 100755 02/nyaa.sh diff --git a/02/README.md b/02/README.md new file mode 100644 index 0000000..e2dd40f --- /dev/null +++ b/02/README.md @@ -0,0 +1,9 @@ +# Day 2 + +"i like how simple the if structure looks like here!" + +`cat data | ./meow.sh` + +"oh no. my if structure." + +`cat data | ./nyaa.sh` diff --git a/02/nyaa.sh b/02/nyaa.sh new file mode 100755 index 0000000..af356a0 --- /dev/null +++ b/02/nyaa.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +# a, x - rock 1 +# b, y - paper 2 +# c, z - scissors 3 + +function normaliz() { + [[ $1 =~ [AX] ]] && echo 1 + [[ $1 =~ [BY] ]] && echo 2 + [[ $1 =~ [CZ] ]] && echo 3 +} + +score=0 + +while read line; do + you=$(normaliz ${line/* /}) + opp=$(normaliz ${line/ */}) + + if [[ "$you" == 2 ]]; then + score=$((score+3+opp)) + elif [[ "$you" == 1 && "$opp" == 1 ]]; then + score=$((score+3)) + elif [[ "$you" == 1 && "$opp" == 2 ]]; then + score=$((score+1)) + elif [[ "$you" == 1 && "$opp" == 3 ]]; then + score=$((score+2)) + elif [[ "$you" == 3 && "$opp" == 1 ]]; then + score=$((score+6+2)) + elif [[ "$you" == 3 && "$opp" == 2 ]]; then + score=$((score+6+3)) + elif [[ "$you" == 3 && "$opp" == 3 ]]; then + score=$((score+6+1)) + fi +done + +echo "$score"