]> www.fi.muni.cz Git - aoc.git/blob - 2017/25.pl
AoC 2017 days 11 to 15
[aoc.git] / 2017 / 25.pl
1 #!/usr/bin/perl
2
3 use v5.30;
4 use strict;
5
6 use List::Util qw(max);
7
8 my %layers = map { /(\d+): (\d+)/ } <>;
9 my $max_l = max keys %layers;
10
11 my $severity = 0;
12 for my $pos (0 .. $max_l) {
13         next if !defined $layers{$pos};
14         next if $pos % (2 * $layers{$pos} - 2);
15         say "caught at $pos";
16         $severity += $pos * $layers{$pos};
17 }
18
19 say $severity;
20