aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2020-12-20 01:43:39 +0000
committerGitHub <noreply@github.com>2020-12-20 01:43:39 +0000
commitada3f2e461481ccf7cf5ef883d4f2c505b4212d5 (patch)
tree055447b0be5e570a0aba146db1ef728e51581cc2
parent8628df766da82395f3ce241cd9cd84b78b49a3e7 (diff)
parent5d8c2e4675de916e191e7147ce1cbf1d88b50664 (diff)
downloadperlweeklychallenge-club-ada3f2e461481ccf7cf5ef883d4f2c505b4212d5.tar.gz
perlweeklychallenge-club-ada3f2e461481ccf7cf5ef883d4f2c505b4212d5.tar.bz2
perlweeklychallenge-club-ada3f2e461481ccf7cf5ef883d4f2c505b4212d5.zip
Merge pull request #3007 from wambash/challenge-week-091
solutions week 091
-rw-r--r--challenge-091/wambash/raku/ch-1.raku20
-rw-r--r--challenge-091/wambash/raku/ch-2.raku23
2 files changed, 43 insertions, 0 deletions
diff --git a/challenge-091/wambash/raku/ch-1.raku b/challenge-091/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..3694f342fc
--- /dev/null
+++ b/challenge-091/wambash/raku/ch-1.raku
@@ -0,0 +1,20 @@
+#!/usr/bin/env raku
+
+sub count-numbers (UInt $n) {
+ $n
+ andthen m:g/$<num>=[\d] $<num>*/
+ andthen .map: {.chars ~ .<num>}\
+ andthen .join
+}
+
+multi MAIN (UInt $n ) {
+ say count-numbers $n
+}
+
+multi MAIN (Bool :$test!) {
+ use Test;
+ is count-numbers(1122234), 21321314;
+ is count-numbers(2333445), 12332415;
+ is count-numbers(12345) , 1112131415;
+ done-testing;
+}
diff --git a/challenge-091/wambash/raku/ch-2.raku b/challenge-091/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..fb216d0192
--- /dev/null
+++ b/challenge-091/wambash/raku/ch-2.raku
@@ -0,0 +1,23 @@
+#!/usr/bin/env raku
+
+subset Steps of Int;
+
+sub jump-game(+@n --> Steps) {
+ my $end = @n.end;
+ my @jump-to = ^∞ Z+ @n;
+
+ 0, { @jump-to[$^a] // $^a } ... * == *
+ andthen .first: * == $end, :k
+}
+
+multi MAIN (Bool :$test!) {
+ use Test;
+ is jump-game(1,2,1,2), 2;
+ is jump-game(2,1,1,0,2), Nil;
+ is jump-game(2,0,3,0,0,1,0), 3;
+ done-testing;
+}
+
+multi MAIN (*@n) {
+ say +so jump-game @n
+}