]> www.fi.muni.cz Git - aoc.git/blob - 2017/05.pl
Day 25: examining the input
[aoc.git] / 2017 / 05.pl
1 #!/usr/bin/perl
2
3 use v5.30;
4 use strict;
5
6 my $in = 368078;
7
8 my $diam = 0;
9 $diam++ while $in > (2*$diam+1)*(2*$diam+1);
10 my $dist = 2*$diam-1;
11 my $dir = -1;
12 my $i = (2*$diam-1)*(2*$diam-1)+1;
13 while ($i < $in) {
14         # say "\t$i $dist $dir";
15         if ($dist <= $diam) {
16                 $dir = 1;
17         } elsif ($dist > 2*$diam-1) {
18                 $dir = -1;
19         }
20         $dist += $dir;
21         $i++;
22 }
23
24 say $dist;