aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-062/simon-miner/perl/ch-1.pl10
1 files changed, 10 insertions, 0 deletions
diff --git a/challenge-062/simon-miner/perl/ch-1.pl b/challenge-062/simon-miner/perl/ch-1.pl
index eadfcd1b17..6cce429f77 100644
--- a/challenge-062/simon-miner/perl/ch-1.pl
+++ b/challenge-062/simon-miner/perl/ch-1.pl
@@ -2,12 +2,22 @@
use strict;
use warnings;
+use Getopt::Std;
+
+my %args = ();
+getopts( 'u', \%args );
my %domains = ();
+my %seen = ();
while ( <> ) {
chomp;
my ( $mailbox, $domain ) = split( m/\@/ );
+
+ my $normalized = $mailbox . '@' . lc( $domain );
+ next if $args{u} && exists( $seen{$normalized} );
+
push( @{ $domains{$domain} }, $mailbox );
+ $seen{$normalized} = 1;
}
my @sorted = ();