aboutsummaryrefslogtreecommitdiff
path: root/challenge-080
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2020-10-02 07:09:46 +0100
committerGitHub <noreply@github.com>2020-10-02 07:09:46 +0100
commit6ccd53c2fbc09fe545026829a1b35c51d501b4d0 (patch)
tree750d5847e6d5a8e6ef21af2c4c82fbd7aad2e5af /challenge-080
parent754cb36bcba3c5797de4b470055dda6bb0f04ef7 (diff)
parentcbb484dfddf8c916e47fcced0a909bbf13c9d172 (diff)
downloadperlweeklychallenge-club-6ccd53c2fbc09fe545026829a1b35c51d501b4d0.tar.gz
perlweeklychallenge-club-6ccd53c2fbc09fe545026829a1b35c51d501b4d0.tar.bz2
perlweeklychallenge-club-6ccd53c2fbc09fe545026829a1b35c51d501b4d0.zip
Merge pull request #2429 from andemark/branch-for-challenge-080
ch-2.raku do-over
Diffstat (limited to 'challenge-080')
-rw-r--r--challenge-080/mark-anderson/raku/ch-2.raku27
1 files changed, 18 insertions, 9 deletions
diff --git a/challenge-080/mark-anderson/raku/ch-2.raku b/challenge-080/mark-anderson/raku/ch-2.raku
index 3d6125d6c9..d66070e3d3 100644
--- a/challenge-080/mark-anderson/raku/ch-2.raku
+++ b/challenge-080/mark-anderson/raku/ch-2.raku
@@ -1,13 +1,22 @@
-unit sub MAIN(*@ints where .all ~~ Int);
+# with help from https://www.youtube.com/watch?v=h6_lIwZYHQw
-my $candies = @ints.elems;
+unit sub MAIN(*@N where .all ~~ Int);
-@ints.push(Inf);
-@ints.unshift(Inf);
+my @L2R = candies(@N);
+my @R2L = candies(@N.reverse);
-for (1..^@ints.end) -> $i {
- $candies++ if @ints[$i] > @ints[$i-1];
- $candies++ if @ints[$i] > @ints[$i+1];
-}
+say (@L2R Z @R2L.reverse).map(*.max).sum;
+
+sub candies(@N) {
+ my @candies = 1 xx @N;
+
+ for @N.keys -> $k {
+ FIRST next;
-say $candies;
+ if @N[$k-1] < @N[$k] {
+ @candies[$k] = @candies[$k-1] + 1;
+ }
+ }
+
+ @candies;
+}