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