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

Ishka
 2004-07-19 14:44
#84462 #84462
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
schnief - meine Lösung wurde wohl vergessen:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use strict;
use warnings;
use Data::Dumper;

my %pot=();

$"=';';
for(@ARGV){if(m#$"#){$".=int rand 10;redo}}# Damit der Inhalt von $" in keinem Element vorkommt

sub add
{
$pot{"@_"}=\@_;
for my $n(0..$#_){
my @n=@_;
splice @n,$n,1;
add(@n) unless exists $pot{"@n"}}
}

add(@ARGV);
$"=', ';# Für die Ausgabe wollen wir das schöner joinen
print "P(@ARGV) = {";
my $i=0;
for(values %pot){
print ", " unless 0==$i++;
print "{@$_}"}
print "}\n";
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 RDW #2 - Rätsel der Woche Nr. 2