aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <Mohammad.Anwar@yahoo.com>2025-10-20 16:52:17 +0100
committerGitHub <noreply@github.com>2025-10-20 16:52:17 +0100
commit20b81406cdf7487e6aa7ba927a49391c68c93c83 (patch)
tree62e67b0a8064cc16a0aac10f178fe99829bde079
parent0089e40542c8edad54c99aad1b7e01bfe7050231 (diff)
parentabaa898a93802227b83dd251659b952030517773 (diff)
downloadperlweeklychallenge-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.txt1
-rwxr-xr-xchallenge-343/jaldhar-h-vyas/perl/ch-1.sh3
-rwxr-xr-xchallenge-343/jaldhar-h-vyas/perl/ch-2.pl24
-rwxr-xr-xchallenge-343/jaldhar-h-vyas/raku/ch-1.sh3
-rwxr-xr-xchallenge-343/jaldhar-h-vyas/raku/ch-2.raku19
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;
+}