aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <Mohammad.Anwar@yahoo.com>2024-09-10 09:02:51 +0100
committerGitHub <noreply@github.com>2024-09-10 09:02:51 +0100
commitbc53a5d6740760dc5df8d925b3ee142f9bf5ea6c (patch)
tree80c7faf782ddc64b5e12f2f9698a7e1cca8bf53d
parent076f4f4bc0acb23080d47ea698070c2ff0980c93 (diff)
parentf68f009f2902dd06708d9dc172bc21afffb0641c (diff)
downloadperlweeklychallenge-club-bc53a5d6740760dc5df8d925b3ee142f9bf5ea6c.tar.gz
perlweeklychallenge-club-bc53a5d6740760dc5df8d925b3ee142f9bf5ea6c.tar.bz2
perlweeklychallenge-club-bc53a5d6740760dc5df8d925b3ee142f9bf5ea6c.zip
Merge pull request #10814 from kjetillll/challenge-286-kjetillll
https://theweeklychallenge.org/blog/perl-weekly-challenge-286/
-rw-r--r--challenge-286/kjetillll/perl/ch-1.pl3
-rw-r--r--challenge-286/kjetillll/perl/ch-2.pl9
2 files changed, 12 insertions, 0 deletions
diff --git a/challenge-286/kjetillll/perl/ch-1.pl b/challenge-286/kjetillll/perl/ch-1.pl
new file mode 100644
index 0000000000..263f9fdbd2
--- /dev/null
+++ b/challenge-286/kjetillll/perl/ch-1.pl
@@ -0,0 +1,3 @@
+open my $fh, '<', $0 or die;
+my @words = map /\S+/g, <$fh>;
+print $words[rand(0+@words)], "\n";
diff --git a/challenge-286/kjetillll/perl/ch-2.pl b/challenge-286/kjetillll/perl/ch-2.pl
new file mode 100644
index 0000000000..e294a33a18
--- /dev/null
+++ b/challenge-286/kjetillll/perl/ch-2.pl
@@ -0,0 +1,9 @@
+use strict; use warnings; use List::Util qw(min max); use Test::More tests=>3;
+
+sub order_game {
+ @_==1 ? pop : order_game( map [\&max,\&min]->[ $_ & 1 ]->( shift, shift ), 1 .. @_/2 )
+}
+
+is order_game(2,1,4,5,6,3,0,2) => 1;
+is order_game(0,5,3,2) => 0;
+is order_game(9,2,1,4,5,6,0,7,3,1,3,5,7,9,0,8) => 2;