So, given a list of words, construct a word square out of them. Here is an example:
The solution:division of a road: _ _ _ _ a location: _ _ _ _ in proximity to: _ _ _ _ hearing organs: _ _ _ _
L A N E A R E A N E A R E A R S |
My code is (updated, thanks to abstracts) 131 characters.#23456789_123456789_123456789_123 sub Q{my$j=pop;my@l=map$$_[$j],@_ ;for(@_){return"@$_",Q(@_,++$j)if "@{[sort@$_]}"eq"@{[sort@l]}"}()} sub S{Q map([split//],@_),$"=""}
_____________________________________________________
Jeff[japhy]Pinyan:
Perl,
regex,
and perl
hacker.
s++=END;++y(;-P)}y js++=;shajsj<++y(p-q)}?print:??;
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: (Golf) Word squares
by abstracts (Hermit) on Aug 14, 2001 at 00:05 UTC | |
by larryk (Friar) on Aug 14, 2001 at 03:07 UTC | |
by Anonymous Monk on Aug 14, 2001 at 02:43 UTC | |
|
Re: (Golf) Word squares
by Cirollo (Friar) on Aug 13, 2001 at 21:18 UTC | |
by blakem (Monsignor) on Aug 13, 2001 at 22:20 UTC | |
by japhy (Canon) on Aug 13, 2001 at 22:13 UTC | |
by Cirollo (Friar) on Aug 13, 2001 at 23:56 UTC |