diff options
| author | Jan Krňávek <Jan.Krnavek@gmail.com> | 2024-03-31 23:31:42 +0200 |
|---|---|---|
| committer | Jan Krňávek <Jan.Krnavek@gmail.com> | 2024-03-31 23:31:42 +0200 |
| commit | cc33227dad734c676bec0f072e78513884550b95 (patch) | |
| tree | 64a8aba924f443bbd7d6d75fcd9224e59aa2a1df | |
| parent | fdeee3349654c610d6ed2f4aca69ef8985e3c094 (diff) | |
| download | perlweeklychallenge-club-cc33227dad734c676bec0f072e78513884550b95.tar.gz perlweeklychallenge-club-cc33227dad734c676bec0f072e78513884550b95.tar.bz2 perlweeklychallenge-club-cc33227dad734c676bec0f072e78513884550b95.zip | |
solutions week 262
| -rw-r--r-- | challenge-262/wambash/raku/ch-1.raku | 20 | ||||
| -rw-r--r-- | challenge-262/wambash/raku/ch-2.raku | 22 |
2 files changed, 42 insertions, 0 deletions
diff --git a/challenge-262/wambash/raku/ch-1.raku b/challenge-262/wambash/raku/ch-1.raku new file mode 100644 index 0000000000..da37b4ebe4 --- /dev/null +++ b/challenge-262/wambash/raku/ch-1.raku @@ -0,0 +1,20 @@ +#!/usr/bin/env raku + +sub max-positive-negative (+ints) { + ints + andthen .classify: *.sign + andthen .nodemap: *.elems + andthen .{-1,1}.max +} + +multi MAIN (Bool :test($)!) { + use Test; + is max-positive-negative(-3,1,2,-1,3,-2,4),4; + is max-positive-negative(-1, -2, -3, 1), 3; + is max-positive-negative(1,2), 2; + done-testing; +} + +multi MAIN (+ints) { + say max-positive-negative ints +} diff --git a/challenge-262/wambash/raku/ch-2.raku b/challenge-262/wambash/raku/ch-2.raku new file mode 100644 index 0000000000..5fc00ac483 --- /dev/null +++ b/challenge-262/wambash/raku/ch-2.raku @@ -0,0 +1,22 @@ +#!/usr/bin/env raku + +sub count-equal-divisible (+ints,:$k) { + ints + andthen .pairs + andthen .classify: *.value, as => *.key + andthen .values + andthen .map: |*.combinations(2).map: -> (\x,\y) {x * y}\ + andthen .grep: { $_ %% $k }\ + andthen .elems +} + +multi MAIN (Bool :test($)!) { + use Test; + is count-equal-divisible(3,1,2,2,2,1,3):2k,4; + is count-equal-divisible(1,2,3):1k,0; + done-testing; +} + +multi MAIN (+ints,:$k) { + say count-equal-divisible +ints,:$k +} |
