aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-195/mark-anderson/raku/ch-1.raku18
-rw-r--r--challenge-195/mark-anderson/raku/ch-2.raku11
2 files changed, 29 insertions, 0 deletions
diff --git a/challenge-195/mark-anderson/raku/ch-1.raku b/challenge-195/mark-anderson/raku/ch-1.raku
new file mode 100644
index 0000000000..32539e82ae
--- /dev/null
+++ b/challenge-195/mark-anderson/raku/ch-1.raku
@@ -0,0 +1,18 @@
+#!/usr/bin/env raku
+use Test;
+
+is special-integers(15), 14;
+is special-integers(35), 32;
+is special-integers(9_999_999), 712890;
+
+sub special-integers($n)
+{
+ .elems given gather for (^10).combinations(1..$n.chars)
+ {
+ for .permutations
+ {
+ next unless .head;
+ .take unless $_ > $n given .join
+ }
+ }
+}
diff --git a/challenge-195/mark-anderson/raku/ch-2.raku b/challenge-195/mark-anderson/raku/ch-2.raku
new file mode 100644
index 0000000000..574f857543
--- /dev/null
+++ b/challenge-195/mark-anderson/raku/ch-2.raku
@@ -0,0 +1,11 @@
+#!/usr/bin/env raku
+use Test;
+
+is most-frequent-even(1,1,2,6,2), 2;
+is most-frequent-even(1,3,5,7), Inf;
+is most-frequent-even(6,4,4,6,1), 4;
+
+sub most-frequent-even(*@list)
+{
+ @list.grep(* %% 2).Bag.maxpairs>>.key.min
+}