aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <Mohammad.Anwar@yahoo.com>2024-05-27 12:10:53 +0100
committerGitHub <noreply@github.com>2024-05-27 12:10:53 +0100
commit0402c7a3134b2e91bee2e16ba7be59f9eb021f1f (patch)
tree64974a55f174f4e1d5f18cf66320cd329b774e6e
parentadc4c521ada41fb936680cd19ce80e4aaacea3d2 (diff)
parentfbb35242a2d65fa3727286feac3fccbe94db8e95 (diff)
downloadperlweeklychallenge-club-0402c7a3134b2e91bee2e16ba7be59f9eb021f1f.tar.gz
perlweeklychallenge-club-0402c7a3134b2e91bee2e16ba7be59f9eb021f1f.tar.bz2
perlweeklychallenge-club-0402c7a3134b2e91bee2e16ba7be59f9eb021f1f.zip
Merge pull request #10162 from andemark/challenge-271
Challenge 271 Solutions (Raku)
-rw-r--r--challenge-271/mark-anderson/raku/ch-1.raku26
-rw-r--r--challenge-271/mark-anderson/raku/ch-2.raku10
2 files changed, 36 insertions, 0 deletions
diff --git a/challenge-271/mark-anderson/raku/ch-1.raku b/challenge-271/mark-anderson/raku/ch-1.raku
new file mode 100644
index 0000000000..77f1f25ccd
--- /dev/null
+++ b/challenge-271/mark-anderson/raku/ch-1.raku
@@ -0,0 +1,26 @@
+#!/usr/bin/env raku
+use Test;
+
+is max-ones([
+ [0, 1],
+ [1, 0],
+ ]), 1;
+
+is max-ones([
+ [0, 0, 0],
+ [1, 0, 1],
+ ]), 2;
+
+is max-ones([
+ [0, 0],
+ [1, 1],
+ [0, 0],
+ ]), 2;
+
+sub max-ones(@m)
+{
+ @m>>.sum
+ .max(:k) # requires rakudo 2023.08 or later
+ .head
+ .succ
+}
diff --git a/challenge-271/mark-anderson/raku/ch-2.raku b/challenge-271/mark-anderson/raku/ch-2.raku
new file mode 100644
index 0000000000..1520a0ad1d
--- /dev/null
+++ b/challenge-271/mark-anderson/raku/ch-2.raku
@@ -0,0 +1,10 @@
+#!/usr/bin/env raku
+use Test;
+
+is-deeply sort-by-one-bits(^9), (0,1,2,4,8,3,5,6,7);
+is-deeply sort-by-one-bits(1024,512,256,128,64), (64,128,256,512,1024);
+
+sub sort-by-one-bits(*@ints)
+{
+ @ints.sort({ .base(2).comb.sum, $_ })
+}