aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorboblied <boblied@gmail.com>2020-09-15 07:14:10 -0500
committerboblied <boblied@gmail.com>2020-09-15 07:14:10 -0500
commit255a4d89c9dbcaecaad6b1ba09ce944d340a0328 (patch)
treea65b8c4b1dca893c2be67eaca6a085db26a2159f
parentedfefe8fd966607f0466b174a86623d721067edf (diff)
downloadperlweeklychallenge-club-255a4d89c9dbcaecaad6b1ba09ce944d340a0328.tar.gz
perlweeklychallenge-club-255a4d89c9dbcaecaad6b1ba09ce944d340a0328.tar.bz2
perlweeklychallenge-club-255a4d89c9dbcaecaad6b1ba09ce944d340a0328.zip
Solution PWC 078 Task 1 Leader Element
-rwxr-xr-xchallenge-078/bob-lied/perl/ch-1.pl23
-rw-r--r--challenge-078/bob-lied/perl/lib/LeaderElement.pm39
-rw-r--r--challenge-078/bob-lied/perl/t/LeaderElement.t20
3 files changed, 11 insertions, 71 deletions
diff --git a/challenge-078/bob-lied/perl/ch-1.pl b/challenge-078/bob-lied/perl/ch-1.pl
index 15ee8dd29b..4ccee7959b 100755
--- a/challenge-078/bob-lied/perl/ch-1.pl
+++ b/challenge-078/bob-lied/perl/ch-1.pl
@@ -22,22 +22,21 @@ use v5.30;
use feature qw/ signatures /;
no warnings qw/ experimental::signatures /;
-use Getopt::Long;
-
-use lib "lib";
-use LeaderElement;
+use List::Util qw / all /;
sub Usage { "Usage: $0 args" };
-my $Verbose = 0;
-GetOptions('verbose' => \$Verbose);
-
-my $arg = shift;
my @list = @ARGV;
-die Usage() unless $arg;
die Usage() unless @list;
-my $task = LeaderElement->new();
-my $result = $task->run();
-say $result;
+my @answer;
+
+while ( my $leader = shift(@list) )
+{
+ if ( all { $leader > $_ } @list )
+ {
+ push @answer, $leader;
+ }
+}
+say "( @answer )";
diff --git a/challenge-078/bob-lied/perl/lib/LeaderElement.pm b/challenge-078/bob-lied/perl/lib/LeaderElement.pm
deleted file mode 100644
index 0d1022a284..0000000000
--- a/challenge-078/bob-lied/perl/lib/LeaderElement.pm
+++ /dev/null
@@ -1,39 +0,0 @@
-# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu:
-#=============================================================================
-# LeaderElement.pm
-#=============================================================================
-# Copyright (c) 2020, Bob Lied
-#=============================================================================
-# Description:
-#=============================================================================
-
-package LeaderElement;
-
-use strict;
-use warnings;
-use v5.30;
-
-use feature qw/ signatures /;
-no warnings qw/ experimental::signatures /;
-
-require Exporter;
-our @ISA = qw(Exporter);
-our @EXPORT = qw();
-our @EXPORT_OK = qw();
-
-sub new($class, $name1)
-{
- $class = ref($class) || $class;
- my $self = {
- _name1 => $name1,
- };
- bless $self, $class;
- return $self;
-}
-
-sub run($self)
-{
- return undef;
-}
-
-1;
diff --git a/challenge-078/bob-lied/perl/t/LeaderElement.t b/challenge-078/bob-lied/perl/t/LeaderElement.t
deleted file mode 100644
index cdb83d2a79..0000000000
--- a/challenge-078/bob-lied/perl/t/LeaderElement.t
+++ /dev/null
@@ -1,20 +0,0 @@
-# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu:
-#
-#===============================================================================
-# FILE: LeaderElement.t
-# DESCRIPTION: Unit test for LeaderElement
-#===============================================================================
-
-use strict;
-use warnings;
-use v5.30;
-
-use Test2::V0;
-
-use lib "lib";
-use LeaderElement;
-
-my $t = LeaderElement->new();
-isa_ok($t, [ "LeaderElement" ], "Constructor");
-
-done_testing();