aboutsummaryrefslogtreecommitdiff
path: root/challenge-078
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2020-09-21 21:18:47 +0100
committerGitHub <noreply@github.com>2020-09-21 21:18:47 +0100
commit5f7e35dc09c813a913aab9bea04f753a5a113962 (patch)
tree44217a9eef57f4f0240e72628f615c162ca76882 /challenge-078
parent5ac16ac7e9826137e0da5597e954f4992c66205d (diff)
parentdb43188976684322245b7fd17aea7c0970cc77dd (diff)
downloadperlweeklychallenge-club-5f7e35dc09c813a913aab9bea04f753a5a113962.tar.gz
perlweeklychallenge-club-5f7e35dc09c813a913aab9bea04f753a5a113962.tar.bz2
perlweeklychallenge-club-5f7e35dc09c813a913aab9bea04f753a5a113962.zip
Merge pull request #2333 from jaldhar/challenge-078
Challenge 78 by Jaldhar H. Vyas
Diffstat (limited to 'challenge-078')
-rw-r--r--challenge-078/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-078/jaldhar-h-vyas/perl/ch-1.pl19
-rwxr-xr-xchallenge-078/jaldhar-h-vyas/perl/ch-2.pl38
-rwxr-xr-xchallenge-078/jaldhar-h-vyas/raku/ch-1.sh1
-rwxr-xr-xchallenge-078/jaldhar-h-vyas/raku/ch-2.p612
5 files changed, 71 insertions, 0 deletions
diff --git a/challenge-078/jaldhar-h-vyas/blog.txt b/challenge-078/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..603d51f44e
--- /dev/null
+++ b/challenge-078/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2020/09/perl_weekly_challenge_week_78.html
diff --git a/challenge-078/jaldhar-h-vyas/perl/ch-1.pl b/challenge-078/jaldhar-h-vyas/perl/ch-1.pl
new file mode 100755
index 0000000000..ddeff64952
--- /dev/null
+++ b/challenge-078/jaldhar-h-vyas/perl/ch-1.pl
@@ -0,0 +1,19 @@
+#!/usr/bin/perl
+use 5.020;
+use warnings;
+
+sub isLeader {
+ my ($n, @arr) = @_;
+
+ for my $elem (@arr) {
+ if ($n <= $elem) {
+ return undef;
+ }
+ }
+
+ return 1;
+}
+
+my $l = scalar @ARGV - 1;
+say join q{, },
+ @ARGV[ grep { isLeader($ARGV[$_], @ARGV[($_ + 1) .. $l]) } 0 .. $l ]; \ No newline at end of file
diff --git a/challenge-078/jaldhar-h-vyas/perl/ch-2.pl b/challenge-078/jaldhar-h-vyas/perl/ch-2.pl
new file mode 100755
index 0000000000..6868903206
--- /dev/null
+++ b/challenge-078/jaldhar-h-vyas/perl/ch-2.pl
@@ -0,0 +1,38 @@
+#!/usr/bin/perl
+use 5.020;
+use warnings;
+use English qw/ -no_match_vars /;
+use Getopt::Std;
+
+sub usage {
+
+ print<<"-USAGE-";
+Usage:
+ $PROGRAM_NAME [-A=<" ... ">] [-B=<" ... ">]
+
+ -A=<" ... "> A string consisting of integers separated by spaces.
+ -B=<" ... "> A string consisting of integers separated by spaces.
+-USAGE-
+
+ exit 0;
+}
+
+sub rotate {
+ my ($n, $arr) = @_;
+ my @arr = @{$arr};
+
+ for (1 .. $n) {
+ push @arr, shift @arr;
+ }
+
+ return @arr;
+}
+
+our ($opt_A, $opt_B);
+
+getopts('A:B:');
+
+my @A = split /\s+/, $opt_A // usage();
+my @B = split /\s+/, $opt_B // usage();
+
+map { say q{[}, (join q{ }, rotate($_, \@A)), q{]}; } @B;
diff --git a/challenge-078/jaldhar-h-vyas/raku/ch-1.sh b/challenge-078/jaldhar-h-vyas/raku/ch-1.sh
new file mode 100755
index 0000000000..e752ce70e6
--- /dev/null
+++ b/challenge-078/jaldhar-h-vyas/raku/ch-1.sh
@@ -0,0 +1 @@
+perl6 -e '@*ARGS[(0 ..^ @*ARGS.elems).grep({ @*ARGS[$_] > all @*ARGS[$_ + 1, ]:v; })].join(q{, }).say;' $@ \ No newline at end of file
diff --git a/challenge-078/jaldhar-h-vyas/raku/ch-2.p6 b/challenge-078/jaldhar-h-vyas/raku/ch-2.p6
new file mode 100755
index 0000000000..8f052d0aac
--- /dev/null
+++ b/challenge-078/jaldhar-h-vyas/raku/ch-2.p6
@@ -0,0 +1,12 @@
+#!/usr/bin/perl6
+
+sub MAIN(
+ :$A where {$_.defined}, #= A string consisting of integers separated by spaces.
+ :$B where {$_.defined} #= A string consisting of integers separated by spaces.
+) {
+ my @A = $A.split(/\s+/);
+ my @B = $B.split(/\s+/);
+
+
+ @B.map({ @A.rotate($_).say; });
+} \ No newline at end of file