diff options
| -rw-r--r-- | challenge-341/mark-anderson/raku/ch-1.raku | 13 | ||||
| -rw-r--r-- | challenge-341/mark-anderson/raku/ch-2.raku | 13 |
2 files changed, 26 insertions, 0 deletions
diff --git a/challenge-341/mark-anderson/raku/ch-1.raku b/challenge-341/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..52cea38299 --- /dev/null +++ b/challenge-341/mark-anderson/raku/ch-1.raku @@ -0,0 +1,13 @@ +#!/usr/bin/env raku +use Test; + +is broken-keyboard("Hello World", [< d >] ), 1; +is broken-keyboard("apple banana cherry", [< a e >]), 0; +is broken-keyboard("Coding is fun", Empty), 3; +is broken-keyboard("The Weekly Challenge", [< a b >]), 2; +is broken-keyboard("Perl and Python", [< p >]), 1; + +sub broken-keyboard($str, @keys) +{ + $str.words.grep({ none /:i @keys/ }).elems +} diff --git a/challenge-341/mark-anderson/raku/ch-2.raku b/challenge-341/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..d7e2dd24db --- /dev/null +++ b/challenge-341/mark-anderson/raku/ch-2.raku @@ -0,0 +1,13 @@ +#!/usr/bin/env raku +use Test; + +is reverse-prefix("programming", "g"), "gorpramming"; +is reverse-prefix("hello", "h"), "hello"; +is reverse-prefix("abcdefghij", "h"), "hgfedcbaij"; +is reverse-prefix("reverse", "s"), "srevere"; +is reverse-prefix("perl", "r"), "repl"; + +sub reverse-prefix($str, $char) +{ + $str.subst(/(.*? $char)/, {$0.flip}) +} |
