From 2485f265bde5f89a7ec2071202fc12602ca0730e Mon Sep 17 00:00:00 2001 From: "Jaldhar H. Vyas" Date: Sun, 9 Feb 2025 10:26:52 -0500 Subject: Challenge 307 by Jaldhar H. Vyas. --- challenge-307/jaldhar-h-vyas/blog.txt | 1 + challenge-307/jaldhar-h-vyas/perl/ch-1.pl | 15 +++++++++++++++ challenge-307/jaldhar-h-vyas/perl/ch-2.pl | 12 ++++++++++++ challenge-307/jaldhar-h-vyas/raku/ch-1.raku | 16 ++++++++++++++++ challenge-307/jaldhar-h-vyas/raku/ch-2.sh | 3 +++ 5 files changed, 47 insertions(+) create mode 100644 challenge-307/jaldhar-h-vyas/blog.txt create mode 100755 challenge-307/jaldhar-h-vyas/perl/ch-1.pl create mode 100755 challenge-307/jaldhar-h-vyas/perl/ch-2.pl create mode 100755 challenge-307/jaldhar-h-vyas/raku/ch-1.raku create mode 100755 challenge-307/jaldhar-h-vyas/raku/ch-2.sh diff --git a/challenge-307/jaldhar-h-vyas/blog.txt b/challenge-307/jaldhar-h-vyas/blog.txt new file mode 100644 index 0000000000..04cbc3ba55 --- /dev/null +++ b/challenge-307/jaldhar-h-vyas/blog.txt @@ -0,0 +1 @@ +https://www.braincells.com/perl/2025/02/perl_weekly_challenge_week_307.html diff --git a/challenge-307/jaldhar-h-vyas/perl/ch-1.pl b/challenge-307/jaldhar-h-vyas/perl/ch-1.pl new file mode 100755 index 0000000000..463fd60cf7 --- /dev/null +++ b/challenge-307/jaldhar-h-vyas/perl/ch-1.pl @@ -0,0 +1,15 @@ +#!/usr/bin/perl +use v5.38; + +my @ints = @ARGV; + +my @sorted = sort { $a <=> $b } @ints; +my @diffs; + +for my $i (keys @ints) { + if ($ints[$i] != $sorted[$i]) { + push @diffs, $i; + } +} + +say q{(}, (join q{, }, @diffs), q{)}; diff --git a/challenge-307/jaldhar-h-vyas/perl/ch-2.pl b/challenge-307/jaldhar-h-vyas/perl/ch-2.pl new file mode 100755 index 0000000000..75810c4e15 --- /dev/null +++ b/challenge-307/jaldhar-h-vyas/perl/ch-2.pl @@ -0,0 +1,12 @@ +#!/usr/bin/perl +use v5.38; + +my @words = @ARGV; + +my %anagrams; +foreach my $word (@words) { + my $sorted = join q{}, sort split //, $word; + $anagrams{$sorted}++; +} + +say scalar %anagrams; diff --git a/challenge-307/jaldhar-h-vyas/raku/ch-1.raku b/challenge-307/jaldhar-h-vyas/raku/ch-1.raku new file mode 100755 index 0000000000..e379469aa3 --- /dev/null +++ b/challenge-307/jaldhar-h-vyas/raku/ch-1.raku @@ -0,0 +1,16 @@ +#!/usr/bin/raku + +sub MAIN( + *@ints +) { + my @sorted = @ints.sort({ $^a <=> $^b }); + my @diffs; + + for @ints.keys -> $i { + if @ints[$i] != @sorted[$i] { + @diffs.push($i); + } + } + + say q{(}, @diffs.join(q{, }), q{)}; +} diff --git a/challenge-307/jaldhar-h-vyas/raku/ch-2.sh b/challenge-307/jaldhar-h-vyas/raku/ch-2.sh new file mode 100755 index 0000000000..6be4df2fd5 --- /dev/null +++ b/challenge-307/jaldhar-h-vyas/raku/ch-2.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +raku -e '@*ARGS.map({$_.comb.sort.join}).unique.elems.say' "$@" -- cgit