Postorder

Score: 53.10 (pass)

Breakthrough!

#!perl -l
$_=pop;for$z(pop=~/./g){s/$z(.*)/
$1
$z/}print/./g

Score: 65.08 (pass)

#!perl
@x=pop;for$n(pop=~/./g){@x=map+(split/($n)/)[0,2,1],@x}print@x,$/

Score: 65.08 (pass)

#!perl -l
@x=pop;for$n(pop=~/./g){@x=map+(split/($n)/)[0,2,1],@x}print@x

Score: 66.09 (pass)

Some obvious optimizations

#!perl
@x=pop;for$n(pop=~/./g){@x=map+(split/($n)/)[0,2,1],@x}print@x,"
"

Score: 79.09 (pass)

#!perl
@x=pop;foreach$n(pop=~/./g){@x=map+(split/($n)/)[0,2,1],@x;}print grep$_,@x,"
"