From c129d514336d310ace07d6540cedad33241db3fa Mon Sep 17 00:00:00 2001 From: Jan Krňávek Date: Sun, 2 Jun 2024 10:16:24 +0200 Subject: solutions week 271 --- challenge-271/wambash/raku/ch-1.raku | 19 +++++++++++++++++++ challenge-271/wambash/raku/ch-2.raku | 14 ++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 challenge-271/wambash/raku/ch-1.raku create mode 100644 challenge-271/wambash/raku/ch-2.raku diff --git a/challenge-271/wambash/raku/ch-1.raku b/challenge-271/wambash/raku/ch-1.raku new file mode 100644 index 0000000000..d0d4e6b7d7 --- /dev/null +++ b/challenge-271/wambash/raku/ch-1.raku @@ -0,0 +1,19 @@ +#!/usr/bin/env raku + +sub maximum-ones (+matrix) { + matrix + andthen .max: *.sum, :k + andthen .head + 1 +} + +multi MAIN (Bool :test($)!) { + use Test; + is maximum-ones(<0 1>,<1 0>),1; + is maximum-ones((0,0,0),(1,0,1)),2; + is maximum-ones(0,0;1,1;0,0),2; + done-testing; +} + +multi MAIN (+matrix) { + say maximum-ones matrix.map: *.comb.cache +} diff --git a/challenge-271/wambash/raku/ch-2.raku b/challenge-271/wambash/raku/ch-2.raku new file mode 100644 index 0000000000..e9e5ce90a3 --- /dev/null +++ b/challenge-271/wambash/raku/ch-2.raku @@ -0,0 +1,14 @@ +#!/usr/bin/env raku + +my &sort-by-one-bits = &sort.assuming: { .polymod( 2 xx * ).sum => $_ }; + +multi MAIN (Bool :test($)!) { + use Test; + is sort-by-one-bits(0..8),(0,1,2,4,8,3,5,6,7); + is sort-by-one-bits((1024,512,256,128,64)), (64,128,256,512,1024); + done-testing; +} + +multi MAIN (+ints) { + put sort-by-one-bits ints +} -- cgit