aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Krňávek <Jan.Krnavek@gmail.com>2024-09-12 21:44:45 +0200
committerJan Krňávek <Jan.Krnavek@gmail.com>2024-09-12 21:44:45 +0200
commite87d9a43e7a76f7fc1e5cb7bfcaf7692c2866b62 (patch)
tree34b9e4c89098ecfa530d077387cc2ef1de9e4caa
parenteb98e39e73f94883aa8975576dcf1bd7b30db182 (diff)
downloadperlweeklychallenge-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.raku8
-rw-r--r--challenge-286/wambash/raku/ch-2.raku24
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
+}