]> www.fi.muni.cz Git - aoc2020.git/blob - 20.pl
Task 9 Perl Golf-style
[aoc2020.git] / 20.pl
1 #!/usr/bin/perl -w
2
3 use strict;
4 use Data::Dumper;
5
6 local $/;
7 my @ads = sort { $a <=> $b } map { chomp; $_ } split /\n/, <>;
8
9 my $prev = 0;
10 my $ones = 0;
11 my $total = 1;
12 my @ones2count = qw(1 1 2 4 7);
13 push @ads, $ads[-1]+3;
14 for my $n (@ads) {
15         if ($n - $prev == 1) {
16                 $ones++;
17         } else {
18                 print "$ones ones + 3, total=$total*$ones2count[$ones]\n";
19                 $total *= $ones2count[$ones];
20                 $ones = 0;
21         }
22         $prev = $n;
23 }
24
25 print "total=$total\n";
26