Cantor

Score: 47.21 (pass)

well, a few more characters shaved off. I guess I need to start work on the other one.

#!perl -l
s//-/;$_.=$"x y|||c.$_ while$ARGV[0]--;print

Score: 48.23 (pass)

slightly better, but still not good enough

#!perl -l
$_='-';$_.=$"x y|||c.$_ while$ARGV[0]--;print

Score: 51.22 (pass)

I'm sure there's a better way of doing this, but I'll sleep on it.

#!perl -l
$_='-';while($ARGV[0]--){$_.=" "x y|||c.$_}print