aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <Mohammad.Anwar@yahoo.com>2024-04-15 02:47:41 +0100
committerGitHub <noreply@github.com>2024-04-15 02:47:41 +0100
commit9369b01b4b59ca80a8320213a775cd5a802ef4a5 (patch)
tree6965088e58da382763e36c05dd6abd3c1c9bbe75
parent116669e48921c254d910466ab1e9be5f6cc1e33b (diff)
parenta783fd03d0480826b9ebaa43632e85283e2fac55 (diff)
downloadperlweeklychallenge-club-9369b01b4b59ca80a8320213a775cd5a802ef4a5.tar.gz
perlweeklychallenge-club-9369b01b4b59ca80a8320213a775cd5a802ef4a5.tar.bz2
perlweeklychallenge-club-9369b01b4b59ca80a8320213a775cd5a802ef4a5.zip
Merge pull request #9929 from jaldhar/challenge-264
Challenge 264 by Jaldhar H. Vyas.
-rw-r--r--challenge-264/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-264/jaldhar-h-vyas/perl/ch-1.pl25
-rwxr-xr-xchallenge-264/jaldhar-h-vyas/perl/ch-2.pl13
-rwxr-xr-xchallenge-264/jaldhar-h-vyas/raku/ch-1.raku9
-rwxr-xr-xchallenge-264/jaldhar-h-vyas/raku/ch-2.raku16
5 files changed, 64 insertions, 0 deletions
diff --git a/challenge-264/jaldhar-h-vyas/blog.txt b/challenge-264/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..0ca462d024
--- /dev/null
+++ b/challenge-264/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2024/04/perl_weekly_challenge_week_264.html
diff --git a/challenge-264/jaldhar-h-vyas/perl/ch-1.pl b/challenge-264/jaldhar-h-vyas/perl/ch-1.pl
new file mode 100755
index 0000000000..aa17abc70d
--- /dev/null
+++ b/challenge-264/jaldhar-h-vyas/perl/ch-1.pl
@@ -0,0 +1,25 @@
+#!/usr/bin/perl
+use 5.030;
+use warnings;
+
+my $str = shift;
+
+my %upper;
+my %lower;
+
+for my $char (split //, $str) {
+ if ($char =~ /[[:upper:]]/) {
+ $upper{$char} = 1;
+ } else {
+ $lower{$char} = 1;
+ }
+}
+
+my $greatest = undef;
+for my $char (sort keys %upper) {
+ if (exists $lower{chr((ord $char) + (ord ' '))}) {
+ $greatest = $char;
+ }
+}
+
+say $greatest // q{''}; \ No newline at end of file
diff --git a/challenge-264/jaldhar-h-vyas/perl/ch-2.pl b/challenge-264/jaldhar-h-vyas/perl/ch-2.pl
new file mode 100755
index 0000000000..917df0c4ce
--- /dev/null
+++ b/challenge-264/jaldhar-h-vyas/perl/ch-2.pl
@@ -0,0 +1,13 @@
+#!/usr/bin/perl
+use 5.030;
+use warnings;
+
+my @sources = split /\s+/, $ARGV[0];
+my @indices = split /\s+/, $ARGV[1];
+my @output;
+
+for my $i (keys @sources) {
+ splice @output, $indices[$i], 0, $sources[$i];
+}
+
+say q{(}, (join q{, }, @output), q{)};
diff --git a/challenge-264/jaldhar-h-vyas/raku/ch-1.raku b/challenge-264/jaldhar-h-vyas/raku/ch-1.raku
new file mode 100755
index 0000000000..bd5a5010c4
--- /dev/null
+++ b/challenge-264/jaldhar-h-vyas/raku/ch-1.raku
@@ -0,0 +1,9 @@
+#!/usr/bin/raku
+
+sub MAIN(
+ $str
+) {
+ $str.comb.classify({ $_ ~~ 'A' .. 'Z' ?? 'upper' !! 'lower'}, :into(my %chars));
+
+ say (%chars<upper>.values ∩ %chars<lower>.values.map({ .uc })).keys.sort[*-1] // q{''};
+} \ No newline at end of file
diff --git a/challenge-264/jaldhar-h-vyas/raku/ch-2.raku b/challenge-264/jaldhar-h-vyas/raku/ch-2.raku
new file mode 100755
index 0000000000..ac2b7a9769
--- /dev/null
+++ b/challenge-264/jaldhar-h-vyas/raku/ch-2.raku
@@ -0,0 +1,16 @@
+#!/usr/bin/raku
+
+sub MAIN(
+ $s, #= sources (integers separated by whitespace)
+ $i #= indices (integers separated by whitespace)
+) {
+ my @sources = $s.split(/\s+/).map({ .Int });
+ my @indices = $i.split(/\s+/).map({ .Int });
+ my @output;
+
+ for @sources.keys -> $i {
+ @output.splice(@indices[$i], 0, @sources[$i]);
+ }
+
+ say q{(}, @output.join(q{, }), q{)};
+} \ No newline at end of file