AoC day 3. Feels a bit C-like and pedestrian, stepping through a string character by character, but at least I get to abuse Perl's implicit string<->number conversion, turning
$v = $v * 10 + $d into the more compact
$v .= $d.
use v5.36;<br><br>my $sum = 0;<br><br>while (readline) {<br> chomp;<br><br> my $v = 0;<br> my $p = 0;<br> for my $k (reverse 1 .. 12) {<br> my $d = substr $_, $p, 1;<br> for my $i ($p + 1 .. length($_) - $k) {<br> my $x = substr $_, $i, 1;<br> if ($x gt $d) {<br> $d = $x;<br> $p = $i;<br> }<br> }<br> $v .= $d;<br> $p++;<br> }<br><br> $sum += $v;<br>}<br><br>say $sum;<br>
#
AdventOfCode #
perl