diff options
| -rw-r--r-- | challenge-080/dave-cross/perl/ch-1.pl | 20 | ||||
| -rw-r--r-- | challenge-080/dave-cross/perl/ch-2.pl | 22 |
2 files changed, 42 insertions, 0 deletions
diff --git a/challenge-080/dave-cross/perl/ch-1.pl b/challenge-080/dave-cross/perl/ch-1.pl new file mode 100644 index 0000000000..59d1ee0490 --- /dev/null +++ b/challenge-080/dave-cross/perl/ch-1.pl @@ -0,0 +1,20 @@ +#!/usr/bin/perl + +use strict; +use warnings; +use feature 'say'; + +my @in = grep { /-?\d+/ } @ARGV; + +die "You must give me a list of integers\n" unless @in; + +my %ints = map { $_ => 1 } @in; + +my $i = 1; + +while (1) { + last if ! exists $ints{$i}; + $i++; +} + +say $i; diff --git a/challenge-080/dave-cross/perl/ch-2.pl b/challenge-080/dave-cross/perl/ch-2.pl new file mode 100644 index 0000000000..4d4f03f0bf --- /dev/null +++ b/challenge-080/dave-cross/perl/ch-2.pl @@ -0,0 +1,22 @@ +#!/usr/bin/perl + +use strict; +use warnings; +use feature 'say'; + +my @in = grep { /\d+/ } @ARGV; + +die "You must give me a list of positive integers\n" unless @in; + +my $sweets = @in; + +for (0 .. $#in) { + if ($_ > 0 and $in[$_] > $in[$_ - 1]) { + $sweets++; + } + if ($_ < $#in and $in[$_] > $in[$_ + 1]) { + $sweets++; + } +} + +say $sweets; |
