Thread etwas kompliziertere Permutation, Prüfungsszenario (8 answers)
Opened by Gast at 2005-05-19 18:12

Ishka
 2005-05-19 19:26
#55068 #55068
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Ich würde in der Reihenfolge der Erzeugung so vorgehen, wie bei der Berechnung, wieviele es sind:

(2 aus 10) mal (2 aus 8) mal (2 aus 6) mal (2 aus 4) = 113400

dh. ersteinmal über alle zweielementigen Teilmengen iterieren und in jedem Schleifendurchlauf alle Kombinationen aus den Restlichen 8 Elementen erzeugen, dann so weiter, so erhälst du automatisch jedes Element nur einmal.

Ich hoffe, du weißt, was ich meine, ansonsten frag einfach nochmal nach.
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}

View full thread etwas kompliziertere Permutation, Prüfungsszenario