summary refs log tree commit diff homepage
path: root/2019
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2019-12-04 02:42:48 -0500
committerJune McEnroe <june@causal.agency>2019-12-04 02:46:55 -0500
commitd9f19857e499a38400a8cad455d64c744f254e68 (patch)
treedd2963c92411234da1784b43b00c0b6327a38e19 /2019
parentSolve day 4 part 2 (diff)
downloadaoc-d9f19857e499a38400a8cad455d64c744f254e68.tar.gz
aoc-d9f19857e499a38400a8cad455d64c744f254e68.zip
Add alternate shell solution for day 4
Diffstat (limited to '2019')
-rw-r--r--2019/day04.sh11
1 files changed, 11 insertions, 0 deletions
diff --git a/2019/day04.sh b/2019/day04.sh
new file mode 100644
index 0000000..6cd264a
--- /dev/null
+++ b/2019/day04.sh
@@ -0,0 +1,11 @@
+IFS=-
+read min max
+seq "$min" "$max" \
+	| grep '^1*2*3*4*5*6*7*8*9*$' \
+	| grep -E '00|11|22|33|44|55|66|77|88|99' \
+	| wc -l
+seq "$min" "$max" \
+	| grep '^1*2*3*4*5*6*7*8*9*$' \
+	| sed 's/.*/x&x/' \
+	| grep -E '[^0]00[^0]|[^1]11[^1]|[^2]22[^2]|[^3]33[^3]|[^4]44[^4]|[^5]55[^5]|[^6]66[^6]|[^7]77[^7]|[^8]88[^8]|[^9]99[^9]' \
+	| wc -l
>June McEnroe Surprisingly good for something written by a man like a hundred years ago! 2021-09-22Remove PSF fontsJune McEnroe They were fun to make but I never actually used them. 2021-09-22Remove Linux-specific utilitiesJune McEnroe I haven't used these in ages. 2021-09-22Call sandbox in CGI modeJune McEnroe Otherwise upload won't actually work. 2021-09-22Support HTTP PUT in upJune McEnroe For use by Palaver[1]. Unfortunately, at least in the current App Store version of Palaver, this doesn't work correctly with basic auth. [1]: https://palaverapp.com/guides/commands/set.html#ui-image_service 2021-09-22Remove default faviconJune McEnroe I hate these things and also this one sucks. 2021-09-21Use Z_FILTERED strategyJune McEnroe 2021-09-21Recalculate various lengths only as neededJune McEnroe This actually speeds things up quite a bit, saving roughly a second on a big PNG screenshot. Almost all the remaining time is spent in deflate. 2021-09-21Rewrite pngo, add explicit optionsJune McEnroe Interesting to see how my code habits have changed. 2021-09-16Fix /* **/ comment matchingJune McEnroe 2021-09-15Remove typer, add downgrade to READMEJune McEnroe 2021-09-15Set bot mode on downgradeJune McEnroe 2021-09-15Enter capsicum in downgradeJune McEnroe 2021-09-15Factor out common parts of downgrade messagesJune McEnroe Also bump the message cap to 1024 because that is ostensibly useful for replying to older messages. 2021-09-14Add downgrade IRC botJune McEnroe 2021-09-14Sort by title if authors matchJune McEnroe There are probably better things to sort by but title definitely always exists. 2021-09-13Swap-remove tags as they're foundJune McEnroe This makes it even faster. From ~1s on a sqlite3.c amalgamation to ~0.85s. 2021-09-12Replace htagml regex with strncmpJune McEnroe Since ctags only ever produces regular expressions of the form /^re$/ or /^re/ with no other special characters, instead unescape the pattern and simply use strncmp. Running on a sqlite3.c amalgamation, the regex version takes ~37s while the strncmp version takes ~1s, producing identical output. Big win! 2021-09-11Also defer printing comment for lone close-parensJune McEnroe 2021-09-10Publish "git-comment"June McEnroe 2021-09-10Add git comment --pretty optionJune McEnroe 2021-09-08Defer printing comment if line is blank or closing braceJune McEnroe This fixes badly indented comments. 2021-09-08Up default min-repeat to 30 linesJune McEnroe 2021-09-08Handle dirty lines in git-commentJune McEnroe 2021-09-08Document and install git-commentJune McEnroe 2021-09-08Add repeat and all options to git-commentJune McEnroe 2021-09-08Add group threshold to git-commentJune McEnroe