5 my @m = map { chomp; [ split // ] } <>;
23 for my $y (0 .. $ymax-1) {
24 for my $x (0 .. $xmax-1) {
25 if ($m[$y][$x] eq '>') {
27 $nx = 0 if $nx >= $xmax;
28 if ($m[$y][$nx] eq '.') {
33 $m1[$y][$x] = $m[$y][$x];
36 if (!defined $m1[$y][$x]) {
37 $m1[$y][$x] = $m[$y][$x];
45 for my $y (0 .. $ymax-1) {
46 for my $x (0 .. $xmax-1) {
47 if ($m[$y][$x] eq 'v') {
49 $ny = 0 if $ny >= $ymax;
50 if ($m[$ny][$x] eq '.') {
55 $m1[$y][$x] = $m[$y][$x];
58 if (!defined $m1[$y][$x]) {
59 $m1[$y][$x] = $m[$y][$x];