]> www.fi.muni.cz Git - aoc2021.git/blobdiff - 07.pl
Day 4: finally regexes!!!
[aoc2021.git] / 07.pl
diff --git a/07.pl b/07.pl
new file mode 100755 (executable)
index 0000000..c304d7c
--- /dev/null
+++ b/07.pl
@@ -0,0 +1,27 @@
+#!/usr/bin/perl -w
+
+use v5.16;
+
+my @drawn = split/[,\s]/, scalar <>;
+scalar <>;
+
+$/ = "\n\n";
+
+my @boards = <>;
+
+say $boards[0];
+
+for my $d (@drawn) {
+       for my $board (@boards) {
+               $board =~ s/\b$d\b/' ' x length $d/e;
+               if ($board =~ /              /
+                       || $board =~ /\s{3}.{12}\s{3}.{12}\s{3}.{12}\s{3}.{12}\s{3}/xms) {
+                       say $board;
+                       $board =~ s/(?<=\d)\s+(?=\d)/+/gxms;
+                       say "$board";
+                       say eval "$d*($board)";
+                       exit;
+               }
+       }
+}
+