aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Krňávek <Jan.Krnavek@gmail.com>2024-07-05 11:25:13 +0200
committerJan Krňávek <Jan.Krnavek@gmail.com>2024-07-05 11:25:13 +0200
commitaa6adf80c7dd90a730f5b6463fb614172a15fbe1 (patch)
tree35ad260979543aa8eb93e60d9a0675ad3b83111d
parented2022e470f4f8e3d46e094fd0eb8e3b6d8ffddf (diff)
downloadperlweeklychallenge-club-aa6adf80c7dd90a730f5b6463fb614172a15fbe1.tar.gz
perlweeklychallenge-club-aa6adf80c7dd90a730f5b6463fb614172a15fbe1.tar.bz2
perlweeklychallenge-club-aa6adf80c7dd90a730f5b6463fb614172a15fbe1.zip
solutions week 276
-rw-r--r--challenge-276/wambash/raku/ch-1.raku21
-rw-r--r--challenge-276/wambash/raku/ch-2.raku19
2 files changed, 40 insertions, 0 deletions
diff --git a/challenge-276/wambash/raku/ch-1.raku b/challenge-276/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..88bde218dd
--- /dev/null
+++ b/challenge-276/wambash/raku/ch-1.raku
@@ -0,0 +1,21 @@
+ #!/usr/bin/env raku
+
+sub complete-day (+hours) {
+ hours
+ andthen .combinations: 2
+ andthen .grep: *.sum %% 24
+ andthen .elems
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is complete-day(12,12,30,24,24),2;
+ is complete-day(12,12,36,24,24),4;
+ is complete-day(72,48,24,5),3;
+ is complete-day(12,18,24),0;
+ done-testing;
+}
+
+multi MAIN (+hours) {
+ say complete-day hours
+}
diff --git a/challenge-276/wambash/raku/ch-2.raku b/challenge-276/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..e0ffe19624
--- /dev/null
+++ b/challenge-276/wambash/raku/ch-2.raku
@@ -0,0 +1,19 @@
+#!/usr/bin/env raku
+
+sub maximum-frequency (+ints) {
+ ints
+ andthen .Bag
+ andthen .max: :with( *.value ), :v
+ andthen .sum
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is maximum-frequency(1,2,2,4,1,5),4;
+ is maximum-frequency(1,2,3,4,5),5;
+ done-testing;
+}
+
+multi MAIN (+ints) {
+ say maximum-frequency ints
+}