diff options
| author | Markus "Holli" Holzer <holli.holzer@gmail.com> | 2020-03-02 05:16:39 +0100 |
|---|---|---|
| committer | Markus "Holli" Holzer <holli.holzer@gmail.com> | 2020-03-02 05:16:39 +0100 |
| commit | 3718ef749fa21ec4cb009d5e9ce5994a492b6e25 (patch) | |
| tree | 72a78427ff342f51485b23b7554d31d0835ea507 /challenge-050 | |
| parent | 16c1fab017ab95d4eadf29dfbc9af17142ae469e (diff) | |
| download | perlweeklychallenge-club-3718ef749fa21ec4cb009d5e9ce5994a492b6e25.tar.gz perlweeklychallenge-club-3718ef749fa21ec4cb009d5e9ce5994a492b6e25.tar.bz2 perlweeklychallenge-club-3718ef749fa21ec4cb009d5e9ce5994a492b6e25.zip | |
Solutions Markus Holzer
Diffstat (limited to 'challenge-050')
| -rw-r--r-- | challenge-050/markus-holzer/raku/ch-1.p6 | 20 | ||||
| -rw-r--r-- | challenge-050/markus-holzer/raku/ch-2.p6 | 15 |
2 files changed, 35 insertions, 0 deletions
diff --git a/challenge-050/markus-holzer/raku/ch-1.p6 b/challenge-050/markus-holzer/raku/ch-1.p6 new file mode 100644 index 0000000000..6904852340 --- /dev/null +++ b/challenge-050/markus-holzer/raku/ch-1.p6 @@ -0,0 +1,20 @@ +sub merge( **@tupel ) +{ + my $current = @tupel.first; + + gather + { + for @tupel[ 1..* ] -> $next + { + $current = [ $current[0], $next[1] ] and next + if $next[0] < $current[1]; + + take $current; + $current = $next; + } + + take $current; + } +} + +dd merge( [2, 7], [3, 9], [10, 12], [15, 19], [18, 22] );
\ No newline at end of file diff --git a/challenge-050/markus-holzer/raku/ch-2.p6 b/challenge-050/markus-holzer/raku/ch-2.p6 new file mode 100644 index 0000000000..ac883a7ae1 --- /dev/null +++ b/challenge-050/markus-holzer/raku/ch-2.p6 @@ -0,0 +1,15 @@ +sub noble( @n ) +{ + my Int $n = (@n = @n.sort).elems; + + ( 0..^$n ) + .grep({ + @n[ $^i ] == $n - $^i - 1 }) + .map({ + @n[ $^i ] }); +} + +say noble( [2, 4, 0, 3] ); +say noble( [1, 4, 5, 6, 7, 8] ); +say noble( [2, 2, 0, 3] ); +say noble( [-1, 0] ); |
