diff options
| author | Jan Krňávek <Jan.Krnavek@gmail.com> | 2024-09-12 21:44:45 +0200 |
|---|---|---|
| committer | Jan Krňávek <Jan.Krnavek@gmail.com> | 2024-09-12 21:44:45 +0200 |
| commit | e87d9a43e7a76f7fc1e5cb7bfcaf7692c2866b62 (patch) | |
| tree | 34b9e4c89098ecfa530d077387cc2ef1de9e4caa | |
| parent | eb98e39e73f94883aa8975576dcf1bd7b30db182 (diff) | |
| download | perlweeklychallenge-club-e87d9a43e7a76f7fc1e5cb7bfcaf7692c2866b62.tar.gz perlweeklychallenge-club-e87d9a43e7a76f7fc1e5cb7bfcaf7692c2866b62.tar.bz2 perlweeklychallenge-club-e87d9a43e7a76f7fc1e5cb7bfcaf7692c2866b62.zip | |
solutions week 286
| -rw-r--r-- | challenge-286/wambash/raku/ch-1.raku | 8 | ||||
| -rw-r--r-- | challenge-286/wambash/raku/ch-2.raku | 24 |
2 files changed, 32 insertions, 0 deletions
diff --git a/challenge-286/wambash/raku/ch-1.raku b/challenge-286/wambash/raku/ch-1.raku new file mode 100644 index 0000000000..f45c58271e --- /dev/null +++ b/challenge-286/wambash/raku/ch-1.raku @@ -0,0 +1,8 @@ +#!/usr/bin/env raku + +unit sub MAIN; + +slurp $?FILE +andthen .words +andthen .pick +andthen .put diff --git a/challenge-286/wambash/raku/ch-2.raku b/challenge-286/wambash/raku/ch-2.raku new file mode 100644 index 0000000000..858a966dcc --- /dev/null +++ b/challenge-286/wambash/raku/ch-2.raku @@ -0,0 +1,24 @@ +#!/usr/bin/env raku + +sub order-game-step (@ints) { + cache @ints.map: -> $a, $b, $c?, $d? { slip $a min $b, $c max $d } +} + +sub order-game (+ints) { + ints + andthen .list, &order-game-step ... *.tail eq -Inf + andthen .tail + andthen .head +} + +multi MAIN (Bool :test($)!) { + use Test; + is order-game(2, 1, 4, 5, 6, 3, 0, 2), 1; + is order-game(0, 5, 3, 2), 0; + is order-game(9, 2, 1, 4, 5, 6, 0, 7, 3, 1, 3, 5, 7, 9, 0, 8), 2; + done-testing; +} + +multi MAIN (+ints) { + say order-game +ints +} |
