Thread Zufalls-LOTTO-Zahlen
(9 answers)
Opened by pax77 at 2008-01-29 19:55
Hallo pax77,
die Anmerkungen von Taulmarill, bezüglich der Favoriten in meiner Lösungs sind wichtig. Ansonsten hast du recht, auf check_double habe ich verzichtet, könnte man aber auch Recht schön mit der Hilfe von List::MoreUtils machen: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 use List::Util qw/sum min/; use List::MoreUtils qw/pairwise/; sub distance { my ($i, $j) = @_; no warnings; my $distance = sum pairwise { $a != $b } @$i, @$j; return $distance; } sub distance_to_any { my ($i, $l) = @_; return min ( map distance( $i, $_ ), @$l ); } print distance ([1, 2, 3, 4], [1, 8, 5, 7]) . "\n"; print distance_to_any ( [1, 2, 3, 4], [ [1, 8, 5, 7], [1, 2, 3, 9] ] ) Wie taulmarill aufgezeigt hat, geht es auch gut ohne zusätzliche Module, mit Bordmitteln. Gruß, Ronnie |