aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Krňávek <Jan.Krnavek@gmail.com>2021-01-10 10:44:46 +0100
committerJan Krňávek <Jan.Krnavek@gmail.com>2021-01-10 10:44:46 +0100
commit09ece01f0d66a0d3a71e5a3132e2b8ea2ad74bda (patch)
tree62f3d9de4141dd365572882b13b8c41018294229
parent6accefb80dcf91089618a5ad3cf3c7988bc70e37 (diff)
downloadperlweeklychallenge-club-09ece01f0d66a0d3a71e5a3132e2b8ea2ad74bda.tar.gz
perlweeklychallenge-club-09ece01f0d66a0d3a71e5a3132e2b8ea2ad74bda.tar.bz2
perlweeklychallenge-club-09ece01f0d66a0d3a71e5a3132e2b8ea2ad74bda.zip
solutions week 094
-rw-r--r--challenge-094/wambash/raku/ch-1.raku17
-rw-r--r--challenge-094/wambash/raku/ch-2.raku11
2 files changed, 28 insertions, 0 deletions
diff --git a/challenge-094/wambash/raku/ch-1.raku b/challenge-094/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..44057201fd
--- /dev/null
+++ b/challenge-094/wambash/raku/ch-1.raku
@@ -0,0 +1,17 @@
+#!/usr/bin/env raku
+
+sub group-anagrams ( +@s ) {
+ @s
+ andthen .classify: *.comb.Bag
+}
+
+multi MAIN (Bool :$test!) {
+ use Test;
+ is group-anagrams(<x>).values, <x>;
+ is-deeply group-anagrams(<opt bat saw tab pot top was>).values.sort,(<opt pot top>, <saw was>, <bat tab>).map(*.Array).sort;
+ done-testing
+}
+
+multi MAIN ( *@s ) {
+ say group-anagrams(@s).values
+}
diff --git a/challenge-094/wambash/raku/ch-2.raku b/challenge-094/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..c862844ba1
--- /dev/null
+++ b/challenge-094/wambash/raku/ch-2.raku
@@ -0,0 +1,11 @@
+#!/usr/bin/env raku
+
+sub binary-tree-to-linked-list ( @a ) {
+ gather { @a.deepmap: *.take }
+}
+
+sub MAIN (Bool :$test!) {
+ use Test;
+ is-deeply binary-tree-to-linked-list( (1, (2,(4,(5,6,7))), 3) ), (1,2,4,5,6,7,3);
+ done-testing;
+}