aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-075/markus-holzer/raku/ch-1.raku6
-rw-r--r--challenge-075/markus-holzer/raku/ch-2.bonus.raku5
-rw-r--r--challenge-075/markus-holzer/raku/ch-2.raku3
3 files changed, 14 insertions, 0 deletions
diff --git a/challenge-075/markus-holzer/raku/ch-1.raku b/challenge-075/markus-holzer/raku/ch-1.raku
new file mode 100644
index 0000000000..89608c02d6
--- /dev/null
+++ b/challenge-075/markus-holzer/raku/ch-1.raku
@@ -0,0 +1,6 @@
+sub c( $S, @C, *@c ) {
+ if ( my $s = @c.sum ) <= $S {
+ take [@c.sort] if $s == $S;
+ c( $S, @C, @c, $_ ) for @C }}
+
+say ( gather c 6, [1, 2, 4] ).unique: with => &[~~] \ No newline at end of file
diff --git a/challenge-075/markus-holzer/raku/ch-2.bonus.raku b/challenge-075/markus-holzer/raku/ch-2.bonus.raku
new file mode 100644
index 0000000000..49ddeadc20
--- /dev/null
+++ b/challenge-075/markus-holzer/raku/ch-2.bonus.raku
@@ -0,0 +1,5 @@
+my @A = (2, 1, 4, 5, 3, 7);
+
+.join(" ").say for reverse [Z]
+ (" ", "-", |(1..@A.max) ),
+ |@A.map({ $_, "-", |("#" xx $_), |(" " xx (@A.max - $_)) });
diff --git a/challenge-075/markus-holzer/raku/ch-2.raku b/challenge-075/markus-holzer/raku/ch-2.raku
new file mode 100644
index 0000000000..0409764f58
--- /dev/null
+++ b/challenge-075/markus-holzer/raku/ch-2.raku
@@ -0,0 +1,3 @@
+my @A = (3, 2, 3, 5, 7, 5);
+#my @A = (2, 1, 4, 5, 3, 7);
+say ( 1..@A ).map({ |@A.rotor($_ => 1 - $_) }).max({ .min * .elems }); \ No newline at end of file