diff options
| author | BarrOff <58253563+BarrOff@users.noreply.github.com> | 2025-05-11 21:53:15 +0200 |
|---|---|---|
| committer | BarrOff <58253563+BarrOff@users.noreply.github.com> | 2025-05-11 21:53:15 +0200 |
| commit | 681f00c79a1343e0cf7b032932232193ebaa38bd (patch) | |
| tree | 9b93a3d2b3b434fb0cdd7c0e70742b0dc94eef98 | |
| parent | 96ffdd8c13c12259b278e66fb1e2572a9688b69b (diff) | |
| download | perlweeklychallenge-club-681f00c79a1343e0cf7b032932232193ebaa38bd.tar.gz perlweeklychallenge-club-681f00c79a1343e0cf7b032932232193ebaa38bd.tar.bz2 perlweeklychallenge-club-681f00c79a1343e0cf7b032932232193ebaa38bd.zip | |
feat: add solutions for challenge 320 from BarrOff
| -rw-r--r-- | challenge-320/barroff/bqn/ch-1.bqn | 7 | ||||
| -rw-r--r-- | challenge-320/barroff/bqn/ch-2.bqn | 9 | ||||
| -rw-r--r-- | challenge-320/barroff/raku/ch-1.p6 | 25 | ||||
| -rw-r--r-- | challenge-320/barroff/raku/ch-2.p6 | 24 |
4 files changed, 65 insertions, 0 deletions
diff --git a/challenge-320/barroff/bqn/ch-1.bqn b/challenge-320/barroff/bqn/ch-1.bqn new file mode 100644 index 0000000000..6d4c23aaf0 --- /dev/null +++ b/challenge-320/barroff/bqn/ch-1.bqn @@ -0,0 +1,7 @@ +#/usr/bin/env bqn + +MaximumCount ← (+´0⊸<)⌈(+´0⊸>) + +•Show MaximumCount ⟨-3, -2, -1, 1, 2, 3⟩ +•Show MaximumCount ⟨-2, -1, 0, 0, 1⟩ +•Show MaximumCount ⟨1, 2, 3, 4⟩ diff --git a/challenge-320/barroff/bqn/ch-2.bqn b/challenge-320/barroff/bqn/ch-2.bqn new file mode 100644 index 0000000000..242be9da5b --- /dev/null +++ b/challenge-320/barroff/bqn/ch-2.bqn @@ -0,0 +1,9 @@ +#/usr/bin/env bqn + +DigitSum ← { (10|𝕩) + (0⊸<)◶ 0‿𝕊 𝕩(⌊∘÷)10 } +SumDifference ← +´-(+´ DigitSum¨) + +•Show SumDifference 1‿23‿4‿5 +•Show SumDifference 1‿2‿3‿4‿5 +•Show SumDifference 1‿2‿34 +•Show SumDifference 236‿416‿336‿350 diff --git a/challenge-320/barroff/raku/ch-1.p6 b/challenge-320/barroff/raku/ch-1.p6 new file mode 100644 index 0000000000..6a4395921b --- /dev/null +++ b/challenge-320/barroff/raku/ch-1.p6 @@ -0,0 +1,25 @@ +#!/usr/bin/env raku + +use v6.d; + +sub maximum-count(@ints --> Int) { + my $p-digits = grep({ $_ > 0 }, @ints).elems; + my $n-digits = grep({ $_ < 0 }, @ints).elems; + return max($p-digits, $n-digits); +} + +#| Run test cases +multi sub MAIN('test') { + use Test; + plan 3; + + is maximum-count([-3, -2, -1, 1, 2, 3]), 3, + 'works for "[-3, -2, -1, 1, 2, 3]"'; + is maximum-count([-2, -1, 0, 0, 1]), 2, 'works for "[-2, -1, 0, 0, 1]"'; + is maximum-count([1, 2, 3, 4]), 4, 'works for "[1, 2, 3, 4]"'; +} + +#| Take user provided numbers like 3, 30, 34, 5, 9 +multi sub MAIN(*@ints) { + say maximum-count(@ints); +} diff --git a/challenge-320/barroff/raku/ch-2.p6 b/challenge-320/barroff/raku/ch-2.p6 new file mode 100644 index 0000000000..9d7fd3a16c --- /dev/null +++ b/challenge-320/barroff/raku/ch-2.p6 @@ -0,0 +1,24 @@ +#!/usr/bin/env raku + +use v6.d; + +sub sum-difference(@ints --> Int) { + my Int $es = sum(@ints); + my Int $ds = sum(@ints.join.comb); + return abs($es - $ds); +} + +#| Run test cases +multi sub MAIN('test') { + use Test; + plan 3; + + is sum-difference([1, 23, 4, 5]), 18, 'works for "[1, 23, 4, 5]"'; + is sum-difference([1, 2, 3, 4, 5]), 0, 'works for "[1, 2, 3, 4, 5]"'; + is sum-difference([1, 2, 34]), 27, 'works for "[1, 2, 34]"'; +} + +#| Take user provided numbers like 3, 30, 34, 5, 9 +multi sub MAIN(*@ints) { + say sum-difference(@ints); +} |
