Factorial

Score: 46.11 (pass)

I should have seen this sooner, I suppose...

#!perl -l
$_*=$~%9e8,$~=/0*$/.$`for@~..pop;print$~%10

Score: 48.12 (pass)

#!perl -l
$_*=$z,$z=$`//0*$/%9e8for++$z..pop;print$z%10

Score: 48.12 (pass)

#!perl -l
$_=$~*$_%9e8,$~=/0*$/.$`for@~..pop;print$~%10

Score: 48.22 (pass)

#!perl -l
$_*=$,$=$`///%9e8for?0*$?..pop;print$%20/2

Score: 48.30 (pass)

#!perl -l
$_*=$,$=$`//0*$/%9e8for+1..pop;print$/2%10

Score: 49.19 (pass)

Hmmmm. Nice solution, but is it portable? It uses $^F, which is "ordinarily 2".

#!perl -l
($=$*$_%1e9)=~s/0*$//for 1..pop;print$/2%10

Score: 49.19 (pass)

Better tiebreaker than the last, by .0067

#!perl -l
($=$*$_%1e9)=~s/0*$//for 1..pop;print$/2%10

Score: 49.19 (pass)

Oops, I submitted the wrong file. This is the one with the improved tiebreaker.

#!perl -l
($=$*$_%1e9)=~s/0*$//for.5,1..pop;print$%10

Score: 50.12 (pass)

#!perl -l
($a=$a*$_%1e9||1)=~s/0*$//for 0..pop;print$a%10

Score: 53.14 (pass)

#!perl -l
$a=1;(($a%=1e9)*=$_)=~s/0*$//for 1..pop;print$a%10