diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2025-11-24 14:44:32 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-24 14:44:32 +0000 |
| commit | e66f54add2cc3f050ef890dd59217a49a6046af1 (patch) | |
| tree | 26e1e682e5e796d82aa291c600fad4e1fde8aa0e | |
| parent | a997f8d29e50aa89a69c616cd6ab5e01fe9105f7 (diff) | |
| parent | 8666968b6a530993973aa99ff47d5d4d41e0f259 (diff) | |
| download | perlweeklychallenge-club-e66f54add2cc3f050ef890dd59217a49a6046af1.tar.gz perlweeklychallenge-club-e66f54add2cc3f050ef890dd59217a49a6046af1.tar.bz2 perlweeklychallenge-club-e66f54add2cc3f050ef890dd59217a49a6046af1.zip | |
Merge pull request #13079 from andemark/challenge-349
Challenge 349 Solutions (Raku)
| -rw-r--r-- | challenge-349/mark-anderson/raku/ch-1.raku | 10 | ||||
| -rw-r--r-- | challenge-349/mark-anderson/raku/ch-2.raku | 22 |
2 files changed, 32 insertions, 0 deletions
diff --git a/challenge-349/mark-anderson/raku/ch-1.raku b/challenge-349/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..86cbe316c5 --- /dev/null +++ b/challenge-349/mark-anderson/raku/ch-1.raku @@ -0,0 +1,10 @@ +#!/usr/bin/env raku +use Test; + +is power-string("textbook"), 2; +is power-string("aaaaa"), 5; +is power-string("hoorayyy"), 3; +is power-string("x"), 1; +is power-string("aabcccddeeffffghijjk"), 4; + +sub power-string($str) { ($str ~~ m:g/(.) $0*/)>>.chars.max } diff --git a/challenge-349/mark-anderson/raku/ch-2.raku b/challenge-349/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..bfcbe338b0 --- /dev/null +++ b/challenge-349/mark-anderson/raku/ch-2.raku @@ -0,0 +1,22 @@ +#!/usr/bin/env raku +use Test; + +nok meeting-point("ULD"); +ok meeting-point("ULDR"); +nok meeting-point("UUURRRDDD"); +ok meeting-point("UURRRDDLLL"); +ok meeting-point("RRUULLDDRRUU"); + +sub meeting-point($path) +{ + my @path = $path.comb; + my $bag = BagHash.new; + + while @path + { + $bag.add: @path.shift; + return True if all .<L> == .<R>, .<U> == .<D> given $bag + } + + return False +} |
