commit 1fcd7bc89df0dd6b8e7e21075adb242ac28fffc5 Author: Skylar Hill Date: Fri Dec 1 21:15:56 2023 -0600 Add Day 1 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9a26890 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*input +*test diff --git a/day1 b/day1 new file mode 100755 index 0000000..0270f10 --- /dev/null +++ b/day1 @@ -0,0 +1,31 @@ +#!/usr/bin/fish + +cat $argv[1] \ + # there's definitely a more elegant way to do this, + # but maybe not with sed, and probably not readably + | sed -E 's/oneight/18/g; + s/twone/21/g; + s/threeight/38/g; + s/fiveight/58/g; + s/sevenine/79/g; + s/eightwo/82/g; + s/eighthree/83/g; + s/nineight/98/g; + s/zerone/01/g; + s/one/1/g; + s/two/2/g; + s/three/3/g; + s/four/4/g; + s/five/5/g; + s/six/6/g; + s/seven/7/g; + s/eight/8/g; + s/nine/9/g; + s/zero/0/g; + s/[a-zA-Z]//g; + s/([0-9]{1})[0-9]*([0-9]{1})/\1\2/g + s/^([0-9]{1})$/\1\1/g' \ + | tr '\n' '+' \ + | sed 's/+$/\n/g; + s/^+//g' \ + | bc