diff options
| author | Jaldhar H. Vyas <jaldhar@braincells.com> | 2024-09-15 17:32:41 -0400 |
|---|---|---|
| committer | Jaldhar H. Vyas <jaldhar@braincells.com> | 2024-09-15 18:03:32 -0400 |
| commit | 7c5057819f44e4dd503fc4b0022fe12428903b92 (patch) | |
| tree | 6ef13dbf282f7a38e1eec7361b4da9a60e0e3eac | |
| parent | 3481abe18527126f6dc8e5a5b548f858201bf70d (diff) | |
| download | perlweeklychallenge-club-7c5057819f44e4dd503fc4b0022fe12428903b92.tar.gz perlweeklychallenge-club-7c5057819f44e4dd503fc4b0022fe12428903b92.tar.bz2 perlweeklychallenge-club-7c5057819f44e4dd503fc4b0022fe12428903b92.zip | |
Challenge 286 by Jaldhar H. Vyas.
| -rw-r--r-- | challenge-286/jaldhar-h-vyas/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-286/jaldhar-h-vyas/perl/ch-1.pl | 10 | ||||
| -rwxr-xr-x | challenge-286/jaldhar-h-vyas/perl/ch-2.pl | 25 | ||||
| -rwxr-xr-x | challenge-286/jaldhar-h-vyas/raku/ch-1.raku | 3 | ||||
| -rwxr-xr-x | challenge-286/jaldhar-h-vyas/raku/ch-2.raku | 20 |
5 files changed, 59 insertions, 0 deletions
diff --git a/challenge-286/jaldhar-h-vyas/blog.txt b/challenge-286/jaldhar-h-vyas/blog.txt new file mode 100644 index 0000000000..b5318fb8f7 --- /dev/null +++ b/challenge-286/jaldhar-h-vyas/blog.txt @@ -0,0 +1 @@ +https://www.braincells.com/perl/2024/09/perl_weekly_challenge_week_286.html diff --git a/challenge-286/jaldhar-h-vyas/perl/ch-1.pl b/challenge-286/jaldhar-h-vyas/perl/ch-1.pl new file mode 100755 index 0000000000..989d31ea5e --- /dev/null +++ b/challenge-286/jaldhar-h-vyas/perl/ch-1.pl @@ -0,0 +1,10 @@ +#!/usr/bin/perl +use v5.38; + +open my $FILE, '<', $0; +local $/ = undef; +my $program = <$FILE>; +close $FILE; +$program =~ s/^.+\n\n//msx; +my @words = split /\s+/, $program; +say $words[int rand scalar @words];
\ No newline at end of file diff --git a/challenge-286/jaldhar-h-vyas/perl/ch-2.pl b/challenge-286/jaldhar-h-vyas/perl/ch-2.pl new file mode 100755 index 0000000000..69888f2e6e --- /dev/null +++ b/challenge-286/jaldhar-h-vyas/perl/ch-2.pl @@ -0,0 +1,25 @@ +#!/usr/bin/perl +use v5.38; + +sub max($first, $second) { + return $first > $second ? $first : $second; +} + +sub min($first, $second) { + return $first < $second ? $first : $second; +} + +my @ints = @ARGV; + +while (scalar @ints > 1) { + my @next; + for my $i (1 .. scalar @ints - 1) { + push @next, $i % 2 == 0 + ? max($ints[$i- 1], $ints[$i]) + : min($ints[$i - 1], $ints[$i]) + ; + } + @ints = @next; +} + +say $ints[0]; diff --git a/challenge-286/jaldhar-h-vyas/raku/ch-1.raku b/challenge-286/jaldhar-h-vyas/raku/ch-1.raku new file mode 100755 index 0000000000..7d8cde3cf2 --- /dev/null +++ b/challenge-286/jaldhar-h-vyas/raku/ch-1.raku @@ -0,0 +1,3 @@ +#!/usr/bin/raku + +$*PROGRAM-NAME.IO.lines.tail.split(/\x2E/).pick(1).join.say;
\ No newline at end of file diff --git a/challenge-286/jaldhar-h-vyas/raku/ch-2.raku b/challenge-286/jaldhar-h-vyas/raku/ch-2.raku new file mode 100755 index 0000000000..183a383b95 --- /dev/null +++ b/challenge-286/jaldhar-h-vyas/raku/ch-2.raku @@ -0,0 +1,20 @@ +#!/usr/bin/raku + +sub MAIN( + *@args +) { + my @ints = @args; + + while (@ints.elems > 1) { + my @next; + for 1 .. @ints.end -> $i { + @next.push($i %% 2 + ?? (@ints[$i- 1], @ints[$i]).max + !! (@ints[$i - 1], @ints[$i]).min + ); + } + @ints = @next; + } + + say @ints[0]; +} |
