diff options
| author | Markus "Holli" Holzer <holli.holzer@gmail.com> | 2020-09-21 15:46:47 +0200 |
|---|---|---|
| committer | Markus "Holli" Holzer <holli.holzer@gmail.com> | 2020-09-21 15:46:47 +0200 |
| commit | da89e65b16be36928445f92d5443dfd6801c76f2 (patch) | |
| tree | 94201d44d26d33dd2521910bb00079876096b9bb | |
| parent | 156b11c445341e9d028777bb41ec506f69fec3a4 (diff) | |
| download | perlweeklychallenge-club-da89e65b16be36928445f92d5443dfd6801c76f2.tar.gz perlweeklychallenge-club-da89e65b16be36928445f92d5443dfd6801c76f2.tar.bz2 perlweeklychallenge-club-da89e65b16be36928445f92d5443dfd6801c76f2.zip | |
somewhat clearer
| -rw-r--r-- | challenge-079/markus-holzer/raku/ch-2.raku | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/challenge-079/markus-holzer/raku/ch-2.raku b/challenge-079/markus-holzer/raku/ch-2.raku index d64fc1a83a..864734a511 100644 --- a/challenge-079/markus-holzer/raku/ch-2.raku +++ b/challenge-079/markus-holzer/raku/ch-2.raku @@ -1,10 +1,10 @@ unit sub MAIN( *@N where @N.all ~~ Int ); +sub index-height { @N.pairs.grep( *.value >= $^height ).map: *.key } +sub index-diff { $^indexes.map({ .[1] - .[0] - 1 if .elems }).sum } + say (@N.max...0) - .map( -> $height { - @N.pairs.grep( *.value >= $height ).map: *.key }) - .map( -> $indexes { - $indexes.rotor(2 => -1) }) - .map( -> $index-pairs { - $index-pairs.map({ .[1] - .[0] - 1 if .elems }).sum }) - .sum;
\ No newline at end of file + .map( &index-height ) + .map( *.rotor: 2 => -1 ) + .map( &index-diff ) + .sum;
\ No newline at end of file |
