diff options
| author | Mark Anderson <mark@frontrangerunner.com> | 2020-07-27 05:38:25 -0600 |
|---|---|---|
| committer | Mark Anderson <mark@frontrangerunner.com> | 2020-07-27 05:38:25 -0600 |
| commit | 82d07e235c3514db06ed58f44eb9f7180546a0ed (patch) | |
| tree | b50ec7f30e19255b78e07f2ab8d94d2793733c10 | |
| parent | 6b0fef6d35e61345ad5fd3f2ab5847c0afafc5ff (diff) | |
| download | perlweeklychallenge-club-82d07e235c3514db06ed58f44eb9f7180546a0ed.tar.gz perlweeklychallenge-club-82d07e235c3514db06ed58f44eb9f7180546a0ed.tar.bz2 perlweeklychallenge-club-82d07e235c3514db06ed58f44eb9f7180546a0ed.zip | |
Peaks Solution
| -rw-r--r-- | challenge-071/mark-anderson/raku/ch-1.raku | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/challenge-071/mark-anderson/raku/ch-1.raku b/challenge-071/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..e255aecde1 --- /dev/null +++ b/challenge-071/mark-anderson/raku/ch-1.raku @@ -0,0 +1,19 @@ +#!/usr/bin/env raku + +unit sub MAIN(UInt $N where 1 < $N <= 50); + +my @array = (1..50).pick($N); + +my $regex = / [^|\s] (\d+) \s (\d+) \s (\d+) [\s|$] <?{ $0 < $1 > $2 }> /; + +my @peaks = gather { + take @array[0] if @array[0] > @array[1]; + + take ~.[1] for @array.join(" ").match($regex, :overlap); + + take @array[*-1] if @array[*-1] > @array[*-2]; +} + +say "Array: ", @array, "\n"; + +say "Peaks: ", @peaks; |
