aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <Mohammad.Anwar@yahoo.com>2024-08-21 23:54:24 +0100
committerGitHub <noreply@github.com>2024-08-21 23:54:24 +0100
commit2d2e2581a4c1cdcfb923b912bd54c97cd7c0481d (patch)
tree5814e2dfda19299c969b12a73054d2ff4119dbf2
parenteff1b15d971e636d5faf65d369d5bb6b22b29c2b (diff)
parent8e582e631e69511970d18141d28c50b667a1e0b5 (diff)
downloadperlweeklychallenge-club-2d2e2581a4c1cdcfb923b912bd54c97cd7c0481d.tar.gz
perlweeklychallenge-club-2d2e2581a4c1cdcfb923b912bd54c97cd7c0481d.tar.bz2
perlweeklychallenge-club-2d2e2581a4c1cdcfb923b912bd54c97cd7c0481d.zip
Merge pull request #10682 from jaldhar/challenge-283
Challenge 283 by Jaldhar H. Vyas.
-rw-r--r--challenge-283/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-283/jaldhar-h-vyas/perl/ch-1.pl11
-rwxr-xr-xchallenge-283/jaldhar-h-vyas/perl/ch-2.pl19
-rwxr-xr-xchallenge-283/jaldhar-h-vyas/raku/ch-1.sh3
-rwxr-xr-xchallenge-283/jaldhar-h-vyas/raku/ch-2.raku18
5 files changed, 52 insertions, 0 deletions
diff --git a/challenge-283/jaldhar-h-vyas/blog.txt b/challenge-283/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..5c739b000c
--- /dev/null
+++ b/challenge-283/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2024/08/perl_weekly_challenge_week_283.html
diff --git a/challenge-283/jaldhar-h-vyas/perl/ch-1.pl b/challenge-283/jaldhar-h-vyas/perl/ch-1.pl
new file mode 100755
index 0000000000..9de178d6da
--- /dev/null
+++ b/challenge-283/jaldhar-h-vyas/perl/ch-1.pl
@@ -0,0 +1,11 @@
+#!/usr/bin/perl
+use v5.38;
+
+my @ints = @ARGV;
+my %count;
+
+for my $int (@ints) {
+ $count{$int}++;
+}
+
+say [sort { scalar $count{$a} <=> scalar $count{$b} } keys %count]->[0];
diff --git a/challenge-283/jaldhar-h-vyas/perl/ch-2.pl b/challenge-283/jaldhar-h-vyas/perl/ch-2.pl
new file mode 100755
index 0000000000..e5ed836ecc
--- /dev/null
+++ b/challenge-283/jaldhar-h-vyas/perl/ch-2.pl
@@ -0,0 +1,19 @@
+#!/usr/bin/perl
+use v5.38;
+
+my @ints = @ARGV;
+my $result = 'true';
+my %count;
+
+for my $int (@ints) {
+ $count{$int}++;
+}
+
+for my $n (keys @ints) {
+ if (scalar ($count{$n} // 0) != $ints[$n]) {
+ $result = 'false';
+ last;
+ }
+}
+
+say $result;
diff --git a/challenge-283/jaldhar-h-vyas/raku/ch-1.sh b/challenge-283/jaldhar-h-vyas/raku/ch-1.sh
new file mode 100755
index 0000000000..17ca0a23d9
--- /dev/null
+++ b/challenge-283/jaldhar-h-vyas/raku/ch-1.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+raku -e '@*ARGS.classify({$_}).sort({$^a.value.elems <=> $^b.value.elems})[0].key.say' "$@" \ No newline at end of file
diff --git a/challenge-283/jaldhar-h-vyas/raku/ch-2.raku b/challenge-283/jaldhar-h-vyas/raku/ch-2.raku
new file mode 100755
index 0000000000..95de32a110
--- /dev/null
+++ b/challenge-283/jaldhar-h-vyas/raku/ch-2.raku
@@ -0,0 +1,18 @@
+#!/usr/bin/raku
+
+sub MAIN(
+ *@ints
+) {
+ my $result = True;
+
+ @ints.classify({ $_; }, :into( my %count) );
+
+ for @ints.keys -> $n {
+ if (%count{$n} // []).elems != @ints[$n] {
+ $result = False;
+ last;
+ }
+ }
+
+ say $result;
+} \ No newline at end of file