aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-242/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-242/jaldhar-h-vyas/perl/ch-1.pl32
-rwxr-xr-xchallenge-242/jaldhar-h-vyas/perl/ch-2.pl8
-rwxr-xr-xchallenge-242/jaldhar-h-vyas/raku/ch-1.raku19
-rwxr-xr-xchallenge-242/jaldhar-h-vyas/raku/ch-2.raku10
5 files changed, 70 insertions, 0 deletions
diff --git a/challenge-242/jaldhar-h-vyas/blog.txt b/challenge-242/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..bad309f0c4
--- /dev/null
+++ b/challenge-242/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2023/11/perl_weekly_challenge_week_242.html
diff --git a/challenge-242/jaldhar-h-vyas/perl/ch-1.pl b/challenge-242/jaldhar-h-vyas/perl/ch-1.pl
new file mode 100755
index 0000000000..150b04ab72
--- /dev/null
+++ b/challenge-242/jaldhar-h-vyas/perl/ch-1.pl
@@ -0,0 +1,32 @@
+#!/usr/bin/perl
+use warnings;
+use 5.030;
+
+sub setDifference {
+ my ($arr1, $arr2) = @_;
+ my %difference = map { $_ => 0 } @{$arr1};
+
+ for my $elem (@{$arr2}) {
+ if (exists $difference{$elem}) {
+ $difference{$elem}++;
+ }
+ }
+
+ return sort grep { !$difference{$_} } keys %difference;
+}
+
+
+my ($arg1, $arg2) = @ARGV;
+
+my @arr1 = split q{ }, $arg1;
+my @arr2 = split q{ }, $arg2;
+
+say q{(},
+ (
+ join q{, }, map { q{[} . ( join q{, }, $_ ) . q{]} } grep { length $_ }
+ (
+ ( join q{, }, setDifference(\@arr1, \@arr2) ),
+ ( join q{, }, setDifference(\@arr2, \@arr1) ),
+ )
+ ),
+q{)};
diff --git a/challenge-242/jaldhar-h-vyas/perl/ch-2.pl b/challenge-242/jaldhar-h-vyas/perl/ch-2.pl
new file mode 100755
index 0000000000..1f58321076
--- /dev/null
+++ b/challenge-242/jaldhar-h-vyas/perl/ch-2.pl
@@ -0,0 +1,8 @@
+#!/usr/bin/perl
+use 5.020;
+use warnings;
+
+my @matrix;
+push @matrix, map { [split q{ }, $_] } @ARGV;
+@matrix = map { [ map { $_ ^ 1 } reverse @{$_} ] } @matrix;
+say q{(} . (join q{, }, map { q{[} . (join q{, }, @{$_}) . q{]} } @matrix) . q{)};
diff --git a/challenge-242/jaldhar-h-vyas/raku/ch-1.raku b/challenge-242/jaldhar-h-vyas/raku/ch-1.raku
new file mode 100755
index 0000000000..d81763d855
--- /dev/null
+++ b/challenge-242/jaldhar-h-vyas/raku/ch-1.raku
@@ -0,0 +1,19 @@
+#!/usr/bin/raku
+
+sub MAIN(
+ Str $arg1,
+ Str $arg2
+){
+ my @arr1 = $arg1.split(q{ });
+ my @arr2 = $arg2.split(q{ });
+
+ say q{(},
+ (
+ (@arr1 ∖ @arr2).keys.sort.join(q{, }),
+ (@arr2 ∖ @arr1).keys.sort.join(q{, })
+ )
+ .grep({ .chars })
+ .map({ q{[} ~ $_.join(q{, }) ~ q{]} })
+ .join(q{, }),
+ q{)};
+} \ No newline at end of file
diff --git a/challenge-242/jaldhar-h-vyas/raku/ch-2.raku b/challenge-242/jaldhar-h-vyas/raku/ch-2.raku
new file mode 100755
index 0000000000..6f45993014
--- /dev/null
+++ b/challenge-242/jaldhar-h-vyas/raku/ch-2.raku
@@ -0,0 +1,10 @@
+#!/usr/bin/raku
+
+sub MAIN(
+ *@args
+) {
+ my @matrix;
+ @matrix.push(| @args.map({ $_.split(q{ }).map({ $_.Int }) }) );
+ @matrix = @matrix.map({ $_.reverse.map({ (!$_).Int }) });
+ say q{(} ~ @matrix.map({ q{[} ~ $_.join(q{, }) ~ q{]} }).join(q{, }) ~ q{)};
+} \ No newline at end of file