diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2025-08-11 00:24:36 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-08-11 00:24:36 +0100 |
| commit | a6ecb654d99dc7eab46aca41daf4c3664a363907 (patch) | |
| tree | 9fa1c918552d9c891575a3602a20013555e9e81a | |
| parent | 87cd98ca2abcbcef67b3e9aa873c760adb25d363 (diff) | |
| parent | 50d9f0865d4da565eeaaeee577f1eccb448ac6d1 (diff) | |
| download | perlweeklychallenge-club-a6ecb654d99dc7eab46aca41daf4c3664a363907.tar.gz perlweeklychallenge-club-a6ecb654d99dc7eab46aca41daf4c3664a363907.tar.bz2 perlweeklychallenge-club-a6ecb654d99dc7eab46aca41daf4c3664a363907.zip | |
Merge pull request #12494 from BarrOff/barroff-333
feat: add solution for challenge 333 from BarrOff
| -rw-r--r-- | challenge-333/barroff/raku/ch-1.p6 | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/challenge-333/barroff/raku/ch-1.p6 b/challenge-333/barroff/raku/ch-1.p6 new file mode 100644 index 0000000000..3b39b0b075 --- /dev/null +++ b/challenge-333/barroff/raku/ch-1.p6 @@ -0,0 +1,34 @@ +#!/usr/bin/env raku + +use v6.d; + +sub duplicate-zeros(@ints --> Positional) { + my @result = map( + { + $_ == 0 + ?? Slip.new(0, 0) + !! $_ + }, + @ints + ); + return @result[0..@ints.elems - 1]; +} + +#| Run test cases +multi sub MAIN('test') { + use Test; + plan 5; + + is duplicate-zeros([1, 0, 2, 3, 0, 4, 5, 0]), (1, 0, 0, 2, 3, 0, 0, 4), + 'works for (1, 0, 2, 3, 0, 4, 5, 0)'; + is duplicate-zeros([1, 2, 3]), (1, 2, 3), 'works for (1, 2, 3)'; + is duplicate-zeros([1, 2, 3, 0]), (1, 2, 3, 0), 'works for (1, 2, 3, 0)'; + is duplicate-zeros([0, 0, 1, 2]), (0, 0, 0, 0), 'works for (0, 0, 1, 2)'; + is duplicate-zeros([1, 2, 0, 3, 4]), (1, 2, 0, 0, 3), + 'works for (1, 2, 0, 3, 4)'; +} + +#| Take user provided list like 1 0 2 3 0 4 5 0 +multi sub MAIN(*@ints where @ints.elems ≥ 1) { + say duplicate-zeros(@ints); +} |
