aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <Mohammad.Anwar@yahoo.com>2025-04-19 21:56:45 +0100
committerGitHub <noreply@github.com>2025-04-19 21:56:45 +0100
commit36a754e3d1a272a06ccc7fdea40c329d35bc434b (patch)
tree05224e4b30913fa246b236be90f1aca5b5707378
parent8e18b51678fdedb420c9b634f7e64aa96aec86b1 (diff)
parentabc33da57f37ac4f80c1929364f135710a30cf16 (diff)
downloadperlweeklychallenge-club-36a754e3d1a272a06ccc7fdea40c329d35bc434b.tar.gz
perlweeklychallenge-club-36a754e3d1a272a06ccc7fdea40c329d35bc434b.tar.bz2
perlweeklychallenge-club-36a754e3d1a272a06ccc7fdea40c329d35bc434b.zip
Merge pull request #11896 from wambash/challenge-week-316
solutions week 316
-rw-r--r--challenge-316/wambash/raku/ch-1.raku20
-rw-r--r--challenge-316/wambash/raku/ch-2.raku24
2 files changed, 44 insertions, 0 deletions
diff --git a/challenge-316/wambash/raku/ch-1.raku b/challenge-316/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..cb529af46c
--- /dev/null
+++ b/challenge-316/wambash/raku/ch-1.raku
@@ -0,0 +1,20 @@
+#!/usr/bin/env raku
+
+sub circular (+list) {
+ list
+ andthen .rotor: 2 => -1
+ andthen .map: { .head.ends-with: .tail().comb.head }\
+ andthen [and] $_
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is circular(<perl loves scala>),True;
+ is circular(<love the programming>),False;
+ is circular(<java awk kotlin node.js>),True;
+ done-testing;
+}
+
+multi MAIN (+list) {
+ say circular list
+}
diff --git a/challenge-316/wambash/raku/ch-2.raku b/challenge-316/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..a53da4cbb9
--- /dev/null
+++ b/challenge-316/wambash/raku/ch-2.raku
@@ -0,0 +1,24 @@
+#!/usr/bin/env raku
+
+sub subsequence ($str1, $str2) {
+ my $a = (
+ $str1
+ andthen .comb
+ andthen .map: { q{ <[\qq{$_}]> <-[\qq{$_}]>* } }\
+ andthen .join
+ );
+
+ $str2.contains: /<$a>/
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is subsequence('uvw', 'bcudvew'),True;
+ is subsequence('aec', 'abde'),False;
+ is subsequence('sip', 'javascript'),True;
+ done-testing;
+}
+
+multi MAIN ($str1, $str2) {
+ say subsequence $str1, $str2
+}