http://www.perlmonks.org?node_id=140793


in reply to Re: (Golf) The Animal Game
in thread (Golf) The Animal Game

I can't golf it better, but I can fix a bug I've spotted. If you say your animal isn't bigger than a bread box, it guesses your animal to be "1", which isn't much fun. These are my changes:
my %tree = ( 'Is your animal larger than a breadbox' => { '1' => 'giraffe', '0' => 'cat', }, ); # anon hashref rather than array ref #234567890#234567890#234567890#234567890#234567890 sub f{ ($s,%t)=@_;$q=$s;do{{$v=a($q);$a=$t{$q}->{$v};$q= $a,redo if$t{$a};$q=$s,next if a($a);$n=&t;$o=i($a ,$n);$t{$o}={0=>$t{$q}->{$v},1=>$n};$t{$q}->{$v}= $o;$q=$s;}}while&w }
Sorry about the extra 13 characters. ;) It's a cool program though, I've got to admit that the idea had me stumped 'til I saw yours and Tilly's answers.

jarich

update: I can't count (or rather I forgot the indexing), 13 extra characters, not 6.

Replies are listed 'Best First'.
Re3: (Golf) The Animal Game
by dragonchild (Archbishop) on Jan 23, 2002 at 21:57 UTC
    It's supposed to be anon listref. I had it as anon hashref, then switched it to anon listref. Updated my original node.

    ------
    We are the carpenters and bricklayers of the Information Age.

    Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.