@f = <>; for (1..shift(@f)) { @s=(); for (1 .. shift(@f)) { @l = split ' ', shift @f; $i=0; $y=0; for (@l) { $x = $y; $y = $s[$i++]; $_ += $x > $y ? $x : $y; } @s = @l; } $m = 0; $m = $m > $_ ? $m : $_ for @s; print "$m\n"; }