diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2025-10-20 16:52:17 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-20 16:52:17 +0100 |
| commit | 20b81406cdf7487e6aa7ba927a49391c68c93c83 (patch) | |
| tree | 62e67b0a8064cc16a0aac10f178fe99829bde079 | |
| parent | 0089e40542c8edad54c99aad1b7e01bfe7050231 (diff) | |
| parent | abaa898a93802227b83dd251659b952030517773 (diff) | |
| download | perlweeklychallenge-club-20b81406cdf7487e6aa7ba927a49391c68c93c83.tar.gz perlweeklychallenge-club-20b81406cdf7487e6aa7ba927a49391c68c93c83.tar.bz2 perlweeklychallenge-club-20b81406cdf7487e6aa7ba927a49391c68c93c83.zip | |
Merge pull request #12875 from jaldhar/challenge-343
Challenge 343 by Jaldhar H. Vyas.
| -rw-r--r-- | challenge-343/jaldhar-h-vyas/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-343/jaldhar-h-vyas/perl/ch-1.sh | 3 | ||||
| -rwxr-xr-x | challenge-343/jaldhar-h-vyas/perl/ch-2.pl | 24 | ||||
| -rwxr-xr-x | challenge-343/jaldhar-h-vyas/raku/ch-1.sh | 3 | ||||
| -rwxr-xr-x | challenge-343/jaldhar-h-vyas/raku/ch-2.raku | 19 |
5 files changed, 50 insertions, 0 deletions
diff --git a/challenge-343/jaldhar-h-vyas/blog.txt b/challenge-343/jaldhar-h-vyas/blog.txt new file mode 100644 index 0000000000..1a4eae96dc --- /dev/null +++ b/challenge-343/jaldhar-h-vyas/blog.txt @@ -0,0 +1 @@ +https://www.braincells.com/perl/2025/10/perl_weekly_challenge_week_343.html diff --git a/challenge-343/jaldhar-h-vyas/perl/ch-1.sh b/challenge-343/jaldhar-h-vyas/perl/ch-1.sh new file mode 100755 index 0000000000..210e8fb030 --- /dev/null +++ b/challenge-343/jaldhar-h-vyas/perl/ch-1.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +perl -E 'say 0+(sort{$a<=>$b}map{abs(0-$_)}@ARGV)[0]' "$@" diff --git a/challenge-343/jaldhar-h-vyas/perl/ch-2.pl b/challenge-343/jaldhar-h-vyas/perl/ch-2.pl new file mode 100755 index 0000000000..345aaecfe6 --- /dev/null +++ b/challenge-343/jaldhar-h-vyas/perl/ch-2.pl @@ -0,0 +1,24 @@ +#!/usr/bin/perl +use 5.038;; +use warnings; + +my @grid; +my @wins; + +for my $arg (@ARGV) { + my @row = split /\s+/, $arg; + push @grid, \@row; + push @wins, scalar grep { $_ } @row; +} + +my $max = (sort {$a <=> $b} @wins)[-1]; +my @candidates = grep { $wins[$_] == $max } keys @wins; +my $champion = $candidates[0]; + +for my $candidate (@candidates[1 .. $#candidates]) { + if ($grid[$champion]->[$candidate] == 0) { + $champion = $candidate; + } +} + +say $champion; diff --git a/challenge-343/jaldhar-h-vyas/raku/ch-1.sh b/challenge-343/jaldhar-h-vyas/raku/ch-1.sh new file mode 100755 index 0000000000..240261e4e1 --- /dev/null +++ b/challenge-343/jaldhar-h-vyas/raku/ch-1.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +raku -e '@*ARGS.map({(0-$_).abs}).sort({$^a <=> $^b})[0].say' "$@" diff --git a/challenge-343/jaldhar-h-vyas/raku/ch-2.raku b/challenge-343/jaldhar-h-vyas/raku/ch-2.raku new file mode 100755 index 0000000000..a64786c6e3 --- /dev/null +++ b/challenge-343/jaldhar-h-vyas/raku/ch-2.raku @@ -0,0 +1,19 @@ +#!/usr/bin/raku + +sub MAIN( + *@args +) { + my @grid = @args.map({ $_.words».Int }); + my @wins = @grid.map({ [+] $_ }); + my $max = @wins.max; + my @candidates = @wins.keys.grep({ @wins[$_] == $max }); + my $champion = @candidates[0]; + + for @candidates[1 .. *] -> $candidate { + if @grid[$champion][$candidate] == 0 { + $champion = $candidate; + } + } + + say $champion; +} |
