Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re: Golf: 3 hole golf game

by dragonchild (Archbishop)
on Nov 16, 2004 at 15:45 UTC ( [id://408143]=note: print w/replies, xml ) Need Help??


in reply to Golf: 3 hole golf game

human.pl: 204 strokes shuffle.pl: 51 strokes select.pl: 55 strokes ------------------------ total: 310 strokes
human.pl: print map{$$_[0]}sort{$$b[1]!~/\D/<=>$$a[1]!~/\D/||(grep$_,map{$_>@$b? +1:($@=($$a [$_]!~/\D/&&length$$a[$_]<=>length$$b[$_])||$$a[$_]cmp$$b[$_])?$@:0}1. +.@$a)[0]}s ort{@$b<=>@$a}map{[$_,split/(\d+|\n)/,lc]}<> shuffle.pl: print map{$n=rand@x;@x[$n,-1]=@x[-1,$n];pop@x}@x=<> select.pl: @x=<>;print map{$n=rand@x;@x[$n,-1]=@x[-1,$n];pop@x}0,1

Update:

human.pl: 189 strokes shuffle.pl: 33 strokes select.pl: 37 strokes ------------------------ total: 259 strokes
human.pl: print map{$$_[0]}sort{$$b[1]!~/\D/<=>$$a[1]!~/\D/||(grep$_,map{$,=$$a[ +$_];$_>@$b ||($,!~/\D/&&length$,<=>length$$b[$_])||$,cmp$$b[$_]}1..@$a)[0]}sort{@ +$b<=>@$a} map{[$_,split/(\d+|\n)/,lc]}<> This passes, but doesn't look right. It does cut 15 strokes, though: print map{$$_[0]}sort{$$b[1]!~/\D/<=>$$a[1]!~/\D/||(grep$_,map{$,=$$a[ +$_];$_>@$b ||($,!~/\D/&&length$,<=>length$$b[$_])||$,cmp$$b[$_]}1..@$a)[0]}map{[$ +_,split/(\ d+|\n)/,lc]}<> shuffle.pl: print map{splice@x,rand@x,1}@x=<> select.pl: @x=<>;print map{splice@x,rand@x,1}0,1

Update2:

human.pl: 185 strokes
human.pl: print map$$_[0],sort{$$b[1]!~/\D/<=>$$a[1]!~/\D/||(grep$_,map$_>@$b||( +($*=$$a[$_ ])!~/\D/&&length$*<=>length$$b[$_])||$*cmp$$b[$_],1..@$a)[0]}sort{@$b< +=>@$a}map[ $_,split/(\d+|\n)/,lc],<>

Update3:

human.pl: 159 strokes
human.pl: print map$$_[0],sort{(grep$_,map$_>@$b||((!grep/\D/,$*=$$a[$_],$_=$$b[ +$_])&&leng th$*<=>length)||$*cmp$_,1..@$a)[0]}sort{@$b<=>@$a}map[$_,split/(\d+|\n +)/,lc],<>

Update3:

human.pl: 137 strokes
human.pl: print map$$_[0],sort{(grep$_,map{((!grep/\D/,$*=$$a[$_],$_=$$b[$_])&&l +ength$*<=> length)||$*cmp$_}1..@$a)[0]}map[$_,split/(\d+|\n)/,lc],<>

Being right, does not endow the right to be rude; politeness costs nothing.
Being unknowing, is not the same as being stupid.
Expressing a contrary opinion, whether to the individual or the group, is more often a sign of deeper thought than of cantankerous belligerence.
Do not mistake your goals as the only goals; your opinion as the only opinion; your confidence as correctness. Saying you know better is not the same as explaining you know better.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://408143]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (7)
As of 2024-04-18 07:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found