aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Krňávek <Jan.Krnavek@gmail.com>2025-06-29 19:12:04 +0200
committerJan Krňávek <Jan.Krnavek@gmail.com>2025-06-29 19:12:04 +0200
commit3334fb02c9edc1a01b10257536350d5b6ac33ebb (patch)
tree1c2226a52451ccc8ff235569049bdac58a9b951d
parent3495f39a1245ae75e4aa8c3862186211a5b33a5b (diff)
downloadperlweeklychallenge-club-3334fb02c9edc1a01b10257536350d5b6ac33ebb.tar.gz
perlweeklychallenge-club-3334fb02c9edc1a01b10257536350d5b6ac33ebb.tar.bz2
perlweeklychallenge-club-3334fb02c9edc1a01b10257536350d5b6ac33ebb.zip
solutions week 327
-rw-r--r--challenge-327/wambash/raku/ch-1.raku18
-rw-r--r--challenge-327/wambash/raku/ch-2.raku20
2 files changed, 38 insertions, 0 deletions
diff --git a/challenge-327/wambash/raku/ch-1.raku b/challenge-327/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..fda8d9441b
--- /dev/null
+++ b/challenge-327/wambash/raku/ch-1.raku
@@ -0,0 +1,18 @@
+#!/usr/bin/env raku
+
+sub missing-integers (+@ints) {
+ 1..+@ints
+ andthen .grep: { $_ ∉ @ints }
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is missing-integers(1,2,1,3,2,5), (4,6);
+ is missing-integers(1 xx 3), (2,3);
+ is missing-integers(2,1,1), (3,);
+ done-testing;
+}
+
+multi MAIN (+ints) {
+ put missing-integers ints».Int;
+}
diff --git a/challenge-327/wambash/raku/ch-2.raku b/challenge-327/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..b3227d4f4c
--- /dev/null
+++ b/challenge-327/wambash/raku/ch-2.raku
@@ -0,0 +1,20 @@
+#!/usr/bin/env raku
+
+sub MAD (+ints) {
+ ints
+ andthen .sort
+ andthen .rotor: 2 => -1
+ andthen .min: {.[1] - .[0]}, :v
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is-deeply MAD(1,5,3,8), ((1,3),(3,5));
+ is-deeply MAD(4,1,2,3), ((1,2),(2,3),(3,4));
+ is-deeply MAD(1,3,7,11,15), ((1,3),);
+ done-testing;
+}
+
+multi MAIN (+ints) {
+ say MAD ints;
+}