aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Krňávek <Jan.Krnavek@gmail.com>2024-07-30 19:09:03 +0200
committerJan Krňávek <Jan.Krnavek@gmail.com>2024-07-30 19:09:03 +0200
commit8965bd63503b1bd2f2f4b41a7e806e459124da3c (patch)
tree0cc86bd26470f66be0978847a345bd513d9656eb
parenta2a0393bed0a645143ff47e7c2ef85c67fa16528 (diff)
downloadperlweeklychallenge-club-8965bd63503b1bd2f2f4b41a7e806e459124da3c.tar.gz
perlweeklychallenge-club-8965bd63503b1bd2f2f4b41a7e806e459124da3c.tar.bz2
perlweeklychallenge-club-8965bd63503b1bd2f2f4b41a7e806e459124da3c.zip
solutions week 280
-rw-r--r--challenge-280/wambash/raku/ch-1.raku20
-rw-r--r--challenge-280/wambash/raku/ch-2.raku20
2 files changed, 40 insertions, 0 deletions
diff --git a/challenge-280/wambash/raku/ch-1.raku b/challenge-280/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..ed8a8d6f2e
--- /dev/null
+++ b/challenge-280/wambash/raku/ch-1.raku
@@ -0,0 +1,20 @@
+#!/usr/bin/env raku
+
+sub twice-appearance ($str) {
+ $str
+ andthen .comb
+ andthen .repeated
+ andthen .head
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is twice-appearance('abcddbca'),'d';
+ is twice-appearance('abccd'),'c';
+ is twice-appearance('abcdabbb'),'a';
+ done-testing;
+}
+
+multi MAIN ($str) {
+ say twice-appearance $str
+}
diff --git a/challenge-280/wambash/raku/ch-2.raku b/challenge-280/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..50e5d8ed64
--- /dev/null
+++ b/challenge-280/wambash/raku/ch-2.raku
@@ -0,0 +1,20 @@
+#!/usr/bin/env raku
+
+sub count-asterisks ($str) {
+ $str
+ andthen .split: /<[|]> ~ <[|]> <-[|]>* /
+ andthen .comb: '*'
+ andthen .elems
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is count-asterisks('p|*e*rl|w**e|*ekly|'),2;
+ is count-asterisks('perl'),0;
+ is count-asterisks('th|ewe|e**|k|l***ych|alleng|e'),5;
+ done-testing;
+}
+
+multi MAIN ($str) {
+ say count-asterisks $str
+}