summary refs log tree commit diff homepage
path: root/2021
diff options
context:
space:
mode:
Diffstat (limited to '2021')
-rw-r--r--2021/day10.pl20
1 files changed, 20 insertions, 0 deletions
diff --git a/2021/day10.pl b/2021/day10.pl
new file mode 100644
index 0000000..871ad0b
--- /dev/null
+++ b/2021/day10.pl
@@ -0,0 +1,20 @@
+use strict;
+use warnings;
+my %pairs = ('(', ')', '[', ']', '{', '}', '<', '>');
+my %scores = (')' => 3, ']' => 57, '}' => 1197, '>' => 25137);
+my $score;
+while (<>) {
+	chomp;
+	my @stack;
+	for (split //) {
+		if (index('([{<', $_) != -1) {
+			unshift @stack, $pairs{$_};
+		} elsif ($_ eq $stack[0]) {
+			shift @stack;
+		} else {
+			$score += $scores{$_};
+			last;
+		}
+	}
+}
+print "$score\n";
>Revert "Enable cookies in title"June McEnroe This reverts commit 279111dda15dd9170e11b9688eb973f2af2e6300. 2019-09-20Enable cookies in titleJune McEnroe Perhaps this will make it less suspicious to Google. Who knows. 2019-09-16Use sensitivity aliases in TF2June McEnroe 2019-09-16Add The Just CityJune McEnroe 2019-09-12Only GET the final redirect locationJune McEnroe 2019-09-12Consume entire bodyJune McEnroe Aborting the request and leaving data around may be causing intermittent errors. Just discard the rest of the data. 2019-09-10Add title -v flagJune McEnroe 2019-09-10Use curl error bufferJune McEnroe 2019-09-10Set Accept-Encoding in titleJune McEnroe Because apparently it's fine for servers to respond with Content-Encoding you didn't ask for, and curl won't decode it if you didn't ask for it. 2019-09-08Set title User-AgentJune McEnroe Some things don't like you if you don't send one. 2019-09-07Add -x flag to titleJune McEnroe 2019-09-07Ignore SIGPIPE in relayJune McEnroe Allows restarting consumers safely. 2019-09-07Add A Memory Called EmpireJune McEnroe 2019-09-05Handle lack of Content-TypeJune McEnroe 2019-09-05Use CURLINFO_CONTENT_TYPEJune McEnroe Oops, didn't see this. 2019-09-05Decode entities in titlesJune McEnroe 2019-09-05Print title as soon as it's availableJune McEnroe 2019-09-05Use CURL_PREFIX to set flagsJune McEnroe 2019-09-05Add titleJune McEnroe 2019-09-04Add Avorter n'est pas tuerJune McEnroe 2019-08-29Unset executable on shell scriptsJune McEnroe 2019-08-29Add long-missing setopt to bin.7June McEnroe 2019-08-29Add editJune McEnroe