aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuca Ferrari <fluca1978@gmail.com>2023-05-15 08:35:22 +0200
committerLuca Ferrari <fluca1978@gmail.com>2023-05-15 08:35:22 +0200
commitfc32bb6575d9df08fd456001d6074a67a4201514 (patch)
tree51ab5d81a393179339729b79a235a8660628aba1
parent5bc6b4f50d9bc898ce10d6baf8ac7fd0d7515e2e (diff)
downloadperlweeklychallenge-club-fc32bb6575d9df08fd456001d6074a67a4201514.tar.gz
perlweeklychallenge-club-fc32bb6575d9df08fd456001d6074a67a4201514.tar.bz2
perlweeklychallenge-club-fc32bb6575d9df08fd456001d6074a67a4201514.zip
Task 2 plperl done
-rw-r--r--challenge-217/luca-ferrari/postgresql/ch-2.plperl22
1 files changed, 22 insertions, 0 deletions
diff --git a/challenge-217/luca-ferrari/postgresql/ch-2.plperl b/challenge-217/luca-ferrari/postgresql/ch-2.plperl
new file mode 100644
index 0000000000..d722bcba46
--- /dev/null
+++ b/challenge-217/luca-ferrari/postgresql/ch-2.plperl
@@ -0,0 +1,22 @@
+--
+-- Perl Weekly Challenge 217
+-- Task 2
+-- See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-217/>
+--
+
+CREATE SCHEMA IF NOT EXISTS pwc217;
+
+CREATE OR REPLACE FUNCTION
+pwc217.task2_plperl( int[] )
+RETURNS int
+AS $CODE$
+ use List::Permutor;
+ my ( $max ) = 0;
+ my $engine = List::Permutor->new( $_[0]->@* );
+ while ( my @current = $engine->next ) {
+ $max = join( '', @current ) if ( join( '', @current ) > $max );
+ }
+
+ return $max;
+$CODE$
+LANGUAGE plperlu;