aboutsummaryrefslogtreecommitdiff
path: root/challenge-106
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-106')
-rw-r--r--challenge-106/mohammad-anwar/perl/ch-1.pl28
1 files changed, 28 insertions, 0 deletions
diff --git a/challenge-106/mohammad-anwar/perl/ch-1.pl b/challenge-106/mohammad-anwar/perl/ch-1.pl
new file mode 100644
index 0000000000..f004af3591
--- /dev/null
+++ b/challenge-106/mohammad-anwar/perl/ch-1.pl
@@ -0,0 +1,28 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use Test::More;
+
+is(max_gap(2, 9, 3, 5), 4);
+is(max_gap(1, 3, 8, 2, 0), 5);
+is(max_gap(5), 0);
+
+done_testing;
+
+sub max_gap {
+ my @n = @_;
+
+ return 0 if @n == 1;
+
+ my $x;
+ my $d = 0;
+ foreach (reverse sort @n) {
+ $x = $_ and next unless defined $x;
+ $d = $x - $_ if ($d < $x - $_);
+ $x = $_;
+ }
+
+ return $d;
+}