5 my @map = map { chomp; [ split // ] } <>;
6 my $xmax = $#{ $map[0] };
13 for my $y (1 .. $ymax) {
14 for my $x (0 .. $xmax) {
15 if ($map[$y][$x] eq 'O' && $map[$y-1][$x] eq '.') {
24 say join('', @$_) for @map;
26 for my $y (0 .. $ymax) {
27 for my $x (0 .. $xmax) {
28 $sum += $ymax + 1 - $y if $map[$y][$x] eq 'O';