<>; $Lmax = 1; for (my $i = 1; $i < $line_n; $i++) { if($Lmax < $_[$i]){$Lmax = $_[$i];} } $T[0] = 0; $T[1] = 0; $T[2] = 0; $T[3] = 1; for (my $i = 4; $i <= $Lmax; $i++) { $T[$i] = $T[$i-1] + $T[$i-2] + $T[$i-3] + $T[$i-4]; } for (my $i = 0; $i < $line_n; $i++) { $A[$i] = $T[$L[$i]] % 17; } for (<>) { print "$A[$_]\n"; }