Factorial

Score: 65.12 (pass)

#!perl -l
$f=$_=$ARGV[0]||1;while(--$f){$_*=$f;s/0$//;$_%=1e6}print$_%10

Score: 69.13 (pass)

faster...

#!perl
$f=$_=$ARGV[0]||1;while(--$f){$_*=$f;s/0*$//;$_%=1e6}/.$/;print"$&\n"

Score: 75.13 (pass)

not very nice - my first try

#!perl
$f=$_=$ARGV[0]||1;while(--$f){($_)=($f*$_)=~/(.{1,6}?)0*$/}/.$/;print"$&\n"