Re: Permutations.

[email protected] (Eugene van der Pijll)
Newsgroups perl.golf
Message-ID <[email protected]>
En op 10 december 2002 sprak Tor Hildrum:
> I'm currently at 200+ using a couple of nested for-loops and to much time,
> which is basically why I was curios what you guys could come up with.
> 
> I found this on the perl-beginner list:
> Perl -e 
> '*,=sub{print+local$*=$*.$_[$_],$/,&,(@_[1+$_..$#_])for$#..$#_};&,(1..5)'
> 
> By Paul Johnson, which isn't to shabby, but not really up to specs.

Also, it's more obfuscated than golf.

perl -lne'sub a{print+local$*=$*.shift,a(@_)for(1)x@_};a/./g'

is the golf version. This one takes input from STDIN, as requested.
Same output, different order:

perl -Xlne'sub a{print+local$*=pop.$*,a(@_)for(1)x@_};a/./g'

> PS: In the real life code, I ended up using a CPAN module :)

More than 95% of all CPAN modules are more than 95% too long.

Lingua-EN-Words2Nums is a typical example.

(-ugene

-- 
Hackers do it with fewer instructions.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.