diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2023-09-24 15:53:07 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-09-24 15:53:07 +0100 |
| commit | e266b94208833b21c95d581c476563748679f264 (patch) | |
| tree | ffdbf9930bc4bc964b6ff1bc7600b184d097e3fc | |
| parent | 0a2024e1bdec3154da40ab6920f6fd84a6c8979a (diff) | |
| parent | ffa588b757dabe033da29385b517ff12da3008b7 (diff) | |
| download | perlweeklychallenge-club-e266b94208833b21c95d581c476563748679f264.tar.gz perlweeklychallenge-club-e266b94208833b21c95d581c476563748679f264.tar.bz2 perlweeklychallenge-club-e266b94208833b21c95d581c476563748679f264.zip | |
Merge pull request #8750 from arnesom/branch-for-challenge-235
Arne Sommer
| -rw-r--r-- | challenge-235/arne-sommer/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-235/arne-sommer/raku/ch-1.raku | 16 | ||||
| -rwxr-xr-x | challenge-235/arne-sommer/raku/ch-2.raku | 14 | ||||
| -rwxr-xr-x | challenge-235/arne-sommer/raku/duplicate-zeros | 14 | ||||
| -rwxr-xr-x | challenge-235/arne-sommer/raku/remove-one | 16 |
5 files changed, 61 insertions, 0 deletions
diff --git a/challenge-235/arne-sommer/blog.txt b/challenge-235/arne-sommer/blog.txt new file mode 100644 index 0000000000..748c6d57b1 --- /dev/null +++ b/challenge-235/arne-sommer/blog.txt @@ -0,0 +1 @@ +https://raku-musings.com/one-zero.html diff --git a/challenge-235/arne-sommer/raku/ch-1.raku b/challenge-235/arne-sommer/raku/ch-1.raku new file mode 100755 index 0000000000..b3c1608d71 --- /dev/null +++ b/challenge-235/arne-sommer/raku/ch-1.raku @@ -0,0 +1,16 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where all(@ints) ~~ Int, :v(:$verbose)); + +# ( say 'true'; exit ) if [<] @ints; + +for 0 .. @ints.end -> $index +{ + my @copy = @ints.clone; + @copy.splice($index,1); + say ":Index $index: remove value @ints[$index] -> @copy[]" if $verbose; + ( say 'true'; exit ) if [<] @copy; +} + +say 'false'; + diff --git a/challenge-235/arne-sommer/raku/ch-2.raku b/challenge-235/arne-sommer/raku/ch-2.raku new file mode 100755 index 0000000000..939c9d040e --- /dev/null +++ b/challenge-235/arne-sommer/raku/ch-2.raku @@ -0,0 +1,14 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where all(@ints) ~~ Int); + +my $seq := gather +{ + for @ints -> $int + { + take $int; + take $int if $int == 0; + } +} + +say "({ $seq[^@ints.elems].join(", ") })"; diff --git a/challenge-235/arne-sommer/raku/duplicate-zeros b/challenge-235/arne-sommer/raku/duplicate-zeros new file mode 100755 index 0000000000..939c9d040e --- /dev/null +++ b/challenge-235/arne-sommer/raku/duplicate-zeros @@ -0,0 +1,14 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where all(@ints) ~~ Int); + +my $seq := gather +{ + for @ints -> $int + { + take $int; + take $int if $int == 0; + } +} + +say "({ $seq[^@ints.elems].join(", ") })"; diff --git a/challenge-235/arne-sommer/raku/remove-one b/challenge-235/arne-sommer/raku/remove-one new file mode 100755 index 0000000000..b3c1608d71 --- /dev/null +++ b/challenge-235/arne-sommer/raku/remove-one @@ -0,0 +1,16 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where all(@ints) ~~ Int, :v(:$verbose)); + +# ( say 'true'; exit ) if [<] @ints; + +for 0 .. @ints.end -> $index +{ + my @copy = @ints.clone; + @copy.splice($index,1); + say ":Index $index: remove value @ints[$index] -> @copy[]" if $verbose; + ( say 'true'; exit ) if [<] @copy; +} + +say 'false'; + |
