diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2024-04-01 00:51:04 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-01 00:51:04 +0100 |
| commit | fe8e01d1c7abe2f8f5a390e5fc6da5882a8087f2 (patch) | |
| tree | 4fe8d35622b89336a4349d1034b6da6f7daf522a | |
| parent | e30ac45a8c0f9852aa17ff2264cc813c83cbaf9f (diff) | |
| parent | 9ef759de099a7e8117d2cbf8a00d6932344225c0 (diff) | |
| download | perlweeklychallenge-club-fe8e01d1c7abe2f8f5a390e5fc6da5882a8087f2.tar.gz perlweeklychallenge-club-fe8e01d1c7abe2f8f5a390e5fc6da5882a8087f2.tar.bz2 perlweeklychallenge-club-fe8e01d1c7abe2f8f5a390e5fc6da5882a8087f2.zip | |
Merge pull request #9844 from wambash/challenge-week-262
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..d3f20cc3b7 --- /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,Int :$k) { + say count-equal-divisible ints,:$k +} |
