diff options
| author | Mark Anderson <mark@andemark.io> | 2025-06-09 11:41:51 +0000 |
|---|---|---|
| committer | Mark Anderson <mark@andemark.io> | 2025-06-09 11:41:51 +0000 |
| commit | e6cb523f26f177d8a23cb1f7470dda76925cdb0b (patch) | |
| tree | d0c78b147d1125c5e831d984f6e4eddbbc6a7893 | |
| parent | e28477d2418099cfbb1a227133c69ddef6eed741 (diff) | |
| download | perlweeklychallenge-club-e6cb523f26f177d8a23cb1f7470dda76925cdb0b.tar.gz perlweeklychallenge-club-e6cb523f26f177d8a23cb1f7470dda76925cdb0b.tar.bz2 perlweeklychallenge-club-e6cb523f26f177d8a23cb1f7470dda76925cdb0b.zip | |
Challenge 325 Solutions (Raku)
| -rw-r--r-- | challenge-325/mark-anderson/raku/ch-1.raku | 13 | ||||
| -rw-r--r-- | challenge-325/mark-anderson/raku/ch-2.raku | 14 |
2 files changed, 27 insertions, 0 deletions
diff --git a/challenge-325/mark-anderson/raku/ch-1.raku b/challenge-325/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..0543ae9985 --- /dev/null +++ b/challenge-325/mark-anderson/raku/ch-1.raku @@ -0,0 +1,13 @@ +#!/usr/bin/env raku +use Test; + +is consecutive-ones(0,1,1,0,1,1,1), 3; +is consecutive-ones(0,0,0,0), 0; +is consecutive-ones(1,0,1,0,1,1), 2; + +sub consecutive-ones(+@b) +{ + my $m = @b.join.match(/1+/, :g) or return 0; + $m.max.chars +} + diff --git a/challenge-325/mark-anderson/raku/ch-2.raku b/challenge-325/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..0cc6eaab34 --- /dev/null +++ b/challenge-325/mark-anderson/raku/ch-2.raku @@ -0,0 +1,14 @@ +#!/usr/bin/env raku +use Test; + +is-deeply final-price(8,4,6,2,3), (4,2,4,2,3); +is-deeply final-price(1,2,3,4,5), (1,2,3,4,5); +is-deeply final-price(7,1,1,5), (6,0,1,5); + +sub final-price(+@prices) +{ + @prices.pairs + .map({ quietly .value - @prices[.key+1..*] + .first(* <= .value) + }) +} |
