Strtol
Score: 130.50 (pass)
#!perl -lp071
s/te|lv/ q/g;s%(.*?)$&\w*%+($+)*1E0$/
%gi,--$/while
b__m__THoHuyzOnwThFofSisEiiqv=~/[(-^]*./g;$_-=eval;s/.(?=(...)+$)/$&,/g
|
Score: 131.50 (pass)
As usual, submitting a minor improvement immediately leads to discovery of another improvement just minutes later.
#!perl -lp071
s/te|lv/ q/g;s%(.*?)$&\w*%+(
$+)*1E0$/
%gi,--$/while
b__m__THoHuyzOnwThFofSisEiiqv=~/[(-^]*./g;$_-=eval;s/.(?=(...)+$)/$&,/g
|
Score: 132.43 (pass)
Remove unneccessary characters from the data-string. (Doh.)
#!perl -lp071
s/te|lv/ q/g;s%(.*?)$&\w*%+(
$+)*1E0$/
%gi,--$/while"b!!m!!.HoHuyzOnwTh+of+xs+giqv"=~/[(-^]*./g;$_-=eval;s/.(?=(...)+$)/$&,/g
|
Score: 134.43 (pass)
Two days of beating my head against a brick wall produces an improvement of 1.01 strokes.
#!perl -lp071
s/te|lv/ q/g;s%(.*?)$&\w*%+(
$+)*1E0$/
%gi,--$/while"b!!m!!.HoHuyzOn+wTh+rf+xs+g+iqv"=~/[(-^]*./g;$_-=eval;s/.(?=(...)+$)/$&,/g
|
Score: 135.44 (pass)
Finally pass Stephen.
#!perl -lp071
s/te|lv/ q/g;s%(.*?)$&\w*%+(
$+)*1E0$/
%gi,--$/while"b!!m!!THoHuyzOn+wTh+rf+xs+g+iqv"=~/[(-^]*./g;$_=0-eval;s/.(?=(...)+$)/$&,/g
|
Score: 139.45 (pass)
#!perl -lp071
s/te|lv/ q/g;s%(.*?)$&\w*%+(
$+)*1E0$/
%gi,--$/while
"b!!m!!THoHuyzOn+wTh+rf+xs+g+iq+v"=~/[(-^]*./g;$_=abs
eval;s/.(?=(...)+$)/$&,/g
|
Score: 142.51 (pass)
This is undoubtedly the most perverse piece of code I've ever written. Too bad that it's nowhere near enough in this sort of competition... :-(
#!perl -lp071
s/te|lv/ q/g;s%(.*?)$@t?$&\w*%+(
$1)*1E0$/
%g,--$/or$@='.*'while
b__m__hohuyzonwthrfxsgiqv=~/[hot]?./g;$_=abs eval;s/.(?=(...)+$)/$&,/g
|
Score: 144.48 (pass)
Use $/ as counter instead of $=, and initialize it using -0.
#!perl -lp071
s/te|lv/ q/g;s%(.*?)t?$&\w*%+($1)*1E$/
%g||s%\w*$&\w*%$/%gi,--$/while
b__m__hohuyZONWTHRFXSGIQV=~/[hOT]?./g;$_=-eval;s/.(?=(...)+$)/$&,/g
|
Score: 147.46 (pass)
I'm starting to suspect the vitality of this horse.
#!perl -pl
$=/=6;s/te|lv/ q/g;--$=>0?s/(.*?)t?$&\w*/+($1)*1E$=
/g:s%\w*$&\w*%$=%gwhile
b__m__hohuyzonwthrfxsgiqv=~/[hot]?./g;$_=-eval;s/.(?=(...)+$)/$&,/g
|
Score: 149.46 (pass)
Better handling of 12-19.
#!perl -pl
$=/=6;s/te|lv/ t/g;--$=>0?s/(.*?)t?$&\w*/+($1)*1E$=
/g:s%\w*$&\w*%-+$=%giwhile
b__m__hohuyzOnwThrfxsgitv=~/[hOT]?./g;$_=eval;s/.(?=(...)+$)/$&,/g
|
Score: 152.43 (pass)
#!perl -pl
$=/=6;s/e.n|lv./+$=/g;--$=>0?s/(.*?)t?$&\w*/+($1)*1E$=
/g:s%\w*$&\w*%-+$=%giwhile
b__m__hohuyzOnwThrfxsgitv=~/[hOT]?./g;$_=eval;s/.(?=(...)+$)/$&,/g
|
Score: 155.45 (pass)
Integrate all of the operations into the main loop. When $= > 0, transform words into multiplications. After that, transform them into numbers. Finally, let perl evaluate the result.
#!perl -pl
$=/=6;s/een|lve/+10/g;for$a(b__m__HoHuyzOnwThrfxshitv=~/[A-Z]?./g){--$=>0?s/(\D*?)t?$a\w*/+($1)*1E$=/gi:s%\w*$a\w*%-+$=%gi}$_=eval;s/.(?=(...)+$)/$&,/g
|
Score: 167.50 (fail)
#!perl -pli9
for$a(b,X,X,m=>X,X,tho,hu,ty){s/(.*?)$a\S*/+($1)*1E$^I
/g;$^I--}s/een|lve/+10/g;s%(\pL.)\w+%+(index"zeontwthfofisiseeiniteel",$1)/2%g;$_=eval;s/.(?=(...)+$)/$&,/
|
Score: 168.51 (pass)
A 'g' was missing from the end of the last submission
Second place now; just 30 strokes behind Mtv.
#!perl -pli9
for$a(b,X,X,m=>X,X,tho,hu,ty){s/(.*?)$a\S*/+($1)*1E$^I
/g;$^I--}s/een|lve/+10/g;s%(\pL.)\w+%+(index"zeontwthfofisiseeiniteel",$1)/2%g;$_=eval;s/.(?=(...)+$)/$&,/g
|
Score: 175.51 (pass)
Do substitutions on the input, transforming it into a perl expression, eval the expression for the result, and group the result by thousands.
#!perl -pl
$b=9;for$a(b,m=>tho,hu){s/(.*?)$a\S*/+($1)*1E$b
/g;$b-=3or$b=2}s/y/*10/g;s/een|lve/+10/g;s%(\pL.)\w+%+(index"zeontwthfofisiseeiniteel",$1)/2%g;$_=eval;s/.(?=(...)+$)/$&,/g
|