]> www.fi.muni.cz Git - aoc.git/blob - 2023/18.pl
Day 9: interesting task
[aoc.git] / 2023 / 18.pl
1 #!/usr/bin/perl -w
2
3 use v5.38;
4
5 my $sum;
6 while (<>) {
7         my @seq = /-?\d+/g;
8         my @rest;
9         while (grep $_, @seq) {
10                 push @rest, $seq[0];
11                 for my $i (0 .. $#seq-1) {
12                         $seq[$i] = $seq[$i+1]-$seq[$i];
13                 }
14                 pop @seq;
15         }
16         my $s = 0;
17         for (reverse @rest) {
18                 $s = $_ - $s;
19         }
20         $sum += $s;
21 }
22
23 say $sum;
24