Thread RDW #2 - Rätsel der Woche Nr. 2 (155 answers)
Opened by renee at 2004-07-16 12:08

Ronnie
 2004-07-21 22:23
#84518 #84518
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
So, nochmal als Funktion P() und mit Unterstützung für alphanumerische Elemente:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/usr/bin/perl

use strict;
use warnings;
use Data::Dumper;

print Dumper P('test', 2, 3);
exit;

sub P {
my @bulk = @_; my $res = [];
foreach my $row (map {[split '', $_]} glob "{0,1}" x @bulk) {
push @$res, [grep {$_ ne 0} map {$row->[$_] && $bulk[$_]} (0..$#bulk)];}
return $res;
}

Der Algorithmus basiert auf der Erstellung einer Wahrheitstabelle für 2^n Elemente mit glob. Der Rest ist ein wenig boolesche Logik.

View full thread RDW #2 - Rätsel der Woche Nr. 2