diff options
| author | Jaldhar H. Vyas <jaldhar@braincells.com> | 2024-08-20 23:50:38 -0400 |
|---|---|---|
| committer | Jaldhar H. Vyas <jaldhar@braincells.com> | 2024-08-21 15:57:37 -0400 |
| commit | 8e582e631e69511970d18141d28c50b667a1e0b5 (patch) | |
| tree | 3eefdb17a4a08f4d2cf470492e7db80b6ed8bd9e /challenge-283 | |
| parent | f9ccc7e49e7cf61ab9159d49ba4d4f8249cda78e (diff) | |
| download | perlweeklychallenge-club-8e582e631e69511970d18141d28c50b667a1e0b5.tar.gz perlweeklychallenge-club-8e582e631e69511970d18141d28c50b667a1e0b5.tar.bz2 perlweeklychallenge-club-8e582e631e69511970d18141d28c50b667a1e0b5.zip | |
Challenge 283 by Jaldhar H. Vyas.
Diffstat (limited to 'challenge-283')
| -rw-r--r-- | challenge-283/jaldhar-h-vyas/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-283/jaldhar-h-vyas/perl/ch-1.pl | 11 | ||||
| -rwxr-xr-x | challenge-283/jaldhar-h-vyas/perl/ch-2.pl | 19 | ||||
| -rwxr-xr-x | challenge-283/jaldhar-h-vyas/raku/ch-1.sh | 3 | ||||
| -rwxr-xr-x | challenge-283/jaldhar-h-vyas/raku/ch-2.raku | 18 |
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 |
