]> www.fi.muni.cz Git - aoc.git/blob - 2016/07.pl
Year 2016, days 1-10: so far pretty interesting
[aoc.git] / 2016 / 07.pl
1 #!/usr/bin/perl -w
2
3 use strict;
4 use v5.30;
5
6 my $sum;
7 while (<>) {
8         chomp;
9         my ($code, $id, $csum) = /\A([a-z-]+)-(\d+)\[([a-z]{5})\]/;
10         my %hist;
11         $hist{$&}++ while ($code =~ /[a-z]/g);
12         my $c1;
13         for my $l (sort { $hist{$b} <=> $hist{$a} || $a cmp $b } keys %hist) {
14                 $c1 .= $l;
15                 last if length $c1 >= length $csum;
16         }
17         $sum += $id if $csum eq $c1;
18 }
19 say $sum;