diff options
Diffstat (limited to 'challenge-059')
| -rw-r--r-- | challenge-059/mark-anderson/perl/ch-2.pl | 14 | ||||
| -rw-r--r-- | challenge-059/mark-anderson/raku/ch-2.p6 | 6 |
2 files changed, 15 insertions, 5 deletions
diff --git a/challenge-059/mark-anderson/perl/ch-2.pl b/challenge-059/mark-anderson/perl/ch-2.pl new file mode 100644 index 0000000000..bdbaf4b42d --- /dev/null +++ b/challenge-059/mark-anderson/perl/ch-2.pl @@ -0,0 +1,14 @@ +#!/usr/bin/env perl + +use Modern::Perl; +use Algorithm::Combinatorics 'combinations'; + +my @list = (2, 3, 4); + +my $sum; + +for my $ref (combinations(\@list, 2)) { + $sum += sprintf("%b", $ref->[0] ^ $ref->[1]) =~ tr/1//; +} + +say $sum; diff --git a/challenge-059/mark-anderson/raku/ch-2.p6 b/challenge-059/mark-anderson/raku/ch-2.p6 index 632161f883..e34cb5aab6 100644 --- a/challenge-059/mark-anderson/raku/ch-2.p6 +++ b/challenge-059/mark-anderson/raku/ch-2.p6 @@ -5,11 +5,7 @@ my @list = (2, 3, 4); my $sum; for @list.combinations(2) -> ($n1, $n2) { - $sum += f($n1, $n2); + $sum += ($n1 +^ $n2).fmt("%b").comb("1").elems; } say $sum; - -sub f ($n1, $n2) { - ($n1 +^ $n2).fmt("%b").comb("1").elems; -} |
