http://qs1969.pair.com?node_id=77535


in reply to (Golf) Fragment Reassembly

92, although I suspect it may not run in polynomial time...:)
sub assemble {$l=eval(join'+',map{y===c}@_);for$x('a'..'z'x$l,'A'..'Z'x$l){return$x + if!grep{$x!~/$_/}@_}}

Replies are listed 'Best First'.
Re: Re: (Golf) Fragment Reassembly
by dws (Chancellor) on May 03, 2001 at 04:43 UTC
    When I try to invoke this via   print assemble qw(GATTACA ATTACA GATT AAGAT CCC); I get   Modification of a read-only value attempted at indigo.pl line 2. If I pass a copy of the array, Perl runs out of memory (PIII-600, 256Mb, ActiveState Perl 5.6.0).

    The map looks suspicious.

      I'd strongly recommend not running this one with strings of length greater than 2...:)