aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <Mohammad.Anwar@yahoo.com>2024-07-27 13:02:06 +0100
committerGitHub <noreply@github.com>2024-07-27 13:02:06 +0100
commit583ce56d4d1c7f60cd147b32d72a84ff5dd01a88 (patch)
treebb145a7d0e7531162f1635bd3ed574848e803a72
parent25eef780ee1070059948cf568a1e76e217fcd1c3 (diff)
parent997be5bd984937177f7ee4177555662b66ae9ddb (diff)
downloadperlweeklychallenge-club-583ce56d4d1c7f60cd147b32d72a84ff5dd01a88.tar.gz
perlweeklychallenge-club-583ce56d4d1c7f60cd147b32d72a84ff5dd01a88.tar.bz2
perlweeklychallenge-club-583ce56d4d1c7f60cd147b32d72a84ff5dd01a88.zip
Merge pull request #10496 from arnesom/branch-for-challenge-279
Arne Sommer
-rw-r--r--challenge-279/arne-sommer/blog.txt1
-rwxr-xr-xchallenge-279/arne-sommer/raku/ch-1.raku6
-rwxr-xr-xchallenge-279/arne-sommer/raku/ch-2.raku7
-rwxr-xr-xchallenge-279/arne-sommer/raku/sort-letters6
-rwxr-xr-xchallenge-279/arne-sommer/raku/split-string5
-rwxr-xr-xchallenge-279/arne-sommer/raku/split-string-zero7
6 files changed, 32 insertions, 0 deletions
diff --git a/challenge-279/arne-sommer/blog.txt b/challenge-279/arne-sommer/blog.txt
new file mode 100644
index 0000000000..f8b73f7173
--- /dev/null
+++ b/challenge-279/arne-sommer/blog.txt
@@ -0,0 +1 @@
+https://raku-musings.com/sort-of-again.html
diff --git a/challenge-279/arne-sommer/raku/ch-1.raku b/challenge-279/arne-sommer/raku/ch-1.raku
new file mode 100755
index 0000000000..bdec48316f
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/ch-1.raku
@@ -0,0 +1,6 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($letters where $letters.chars > 0,
+ *@weight where @weight.elems eq $letters.chars && all(@weight) ~~ UInt);
+
+say ($letters.comb Z @weight).sort({ $^a.[1] <=> $^b.[1] }).map( *.[0] ).join;
diff --git a/challenge-279/arne-sommer/raku/ch-2.raku b/challenge-279/arne-sommer/raku/ch-2.raku
new file mode 100755
index 0000000000..b5add71ebe
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/ch-2.raku
@@ -0,0 +1,7 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($str where $str.chars > 0);
+
+my $elems = $str.comb.grep( * eq any(<a e i o u>) ).elems;
+
+say so $elems && $elems %% 2;
diff --git a/challenge-279/arne-sommer/raku/sort-letters b/challenge-279/arne-sommer/raku/sort-letters
new file mode 100755
index 0000000000..bdec48316f
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/sort-letters
@@ -0,0 +1,6 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($letters where $letters.chars > 0,
+ *@weight where @weight.elems eq $letters.chars && all(@weight) ~~ UInt);
+
+say ($letters.comb Z @weight).sort({ $^a.[1] <=> $^b.[1] }).map( *.[0] ).join;
diff --git a/challenge-279/arne-sommer/raku/split-string b/challenge-279/arne-sommer/raku/split-string
new file mode 100755
index 0000000000..08b55be341
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/split-string
@@ -0,0 +1,5 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($str where $str.chars > 0);
+
+say $str.comb.grep( * eq any(<a e i o u>) ).elems %% 2;
diff --git a/challenge-279/arne-sommer/raku/split-string-zero b/challenge-279/arne-sommer/raku/split-string-zero
new file mode 100755
index 0000000000..b5add71ebe
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/split-string-zero
@@ -0,0 +1,7 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($str where $str.chars > 0);
+
+my $elems = $str.comb.grep( * eq any(<a e i o u>) ).elems;
+
+say so $elems && $elems %% 2;