diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2024-04-15 02:47:41 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-15 02:47:41 +0100 |
| commit | 9369b01b4b59ca80a8320213a775cd5a802ef4a5 (patch) | |
| tree | 6965088e58da382763e36c05dd6abd3c1c9bbe75 | |
| parent | 116669e48921c254d910466ab1e9be5f6cc1e33b (diff) | |
| parent | a783fd03d0480826b9ebaa43632e85283e2fac55 (diff) | |
| download | perlweeklychallenge-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.txt | 1 | ||||
| -rwxr-xr-x | challenge-264/jaldhar-h-vyas/perl/ch-1.pl | 25 | ||||
| -rwxr-xr-x | challenge-264/jaldhar-h-vyas/perl/ch-2.pl | 13 | ||||
| -rwxr-xr-x | challenge-264/jaldhar-h-vyas/raku/ch-1.raku | 9 | ||||
| -rwxr-xr-x | challenge-264/jaldhar-h-vyas/raku/ch-2.raku | 16 |
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 |
