aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Krňávek <Jan.Krnavek@gmail.com>2023-11-12 10:43:06 +0100
committerJan Krňávek <Jan.Krnavek@gmail.com>2023-11-12 10:43:06 +0100
commit83b15bd0f72a3c368ef0d3a1ca396fac9aed6cd6 (patch)
treebc12de06a8a666226b2ffea2acc178b9addb3093
parent5744606aeb3d7eb47255ccb00f645891762b765f (diff)
downloadperlweeklychallenge-club-83b15bd0f72a3c368ef0d3a1ca396fac9aed6cd6.tar.gz
perlweeklychallenge-club-83b15bd0f72a3c368ef0d3a1ca396fac9aed6cd6.tar.bz2
perlweeklychallenge-club-83b15bd0f72a3c368ef0d3a1ca396fac9aed6cd6.zip
solutions week 242
-rw-r--r--challenge-242/wambash/raku/ch-1.raku17
-rw-r--r--challenge-242/wambash/raku/ch-2.raku26
2 files changed, 43 insertions, 0 deletions
diff --git a/challenge-242/wambash/raku/ch-1.raku b/challenge-242/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..acf96320a7
--- /dev/null
+++ b/challenge-242/wambash/raku/ch-1.raku
@@ -0,0 +1,17 @@
+#!/usr/bin/env raku
+
+sub missing-members (@arr1,@arr2) {
+ @arr1 ∖ @arr2, @arr2 ∖ @arr1
+ andthen .map: *.keys.sort.list
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is-deeply missing-members((1,2,3),(2,4,6)),((1,3),(4,6));
+ is-deeply missing-members((1,2,3,3),(1,1,2,2)),((3,),());
+ done-testing;
+}
+
+multi MAIN (:@arr1,:@arr2) {
+ say missing-members @arr1,@arr2
+}
diff --git a/challenge-242/wambash/raku/ch-2.raku b/challenge-242/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..d0933613ab
--- /dev/null
+++ b/challenge-242/wambash/raku/ch-2.raku
@@ -0,0 +1,26 @@
+#!/usr/bin/env raku
+
+sub flip-matrix (+matrix) {
+ matrix .map: *.reverse »+^» 1
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is-deeply flip-matrix((1,1,0),(1,0,1),(0,0,0)),((1,0,0),(0,1,0),(1,1,1));
+ is-deeply flip-matrix(
+ [1, 1, 0, 0],
+ [1, 0, 0, 1],
+ [0, 1, 1, 1],
+ [1, 0, 1, 0],
+ ),(
+ (1, 1, 0, 0),
+ (0, 1, 1, 0),
+ (0, 0, 0, 1),
+ (1, 0, 1, 0),
+ );
+ done-testing;
+}
+
+multi MAIN (+matrix) {
+ .put for flip-matrix matrix».split(',')
+}