diff options
| author | Mark Anderson <mark@frontrangerunner.com> | 2019-08-10 00:54:15 -0600 |
|---|---|---|
| committer | Mark Anderson <mark@frontrangerunner.com> | 2019-08-10 00:54:15 -0600 |
| commit | 853d263a48ddfb992e4c16c72cc6c613e9046bd3 (patch) | |
| tree | 83757124c20a9e42b817b589ee1ae670fc52fdc7 | |
| parent | 60b3beca72feebb323facec2f4b47eb97be5012c (diff) | |
| download | perlweeklychallenge-club-853d263a48ddfb992e4c16c72cc6c613e9046bd3.tar.gz perlweeklychallenge-club-853d263a48ddfb992e4c16c72cc6c613e9046bd3.tar.bz2 perlweeklychallenge-club-853d263a48ddfb992e4c16c72cc6c613e9046bd3.zip | |
Simplified ch-2.pl
| -rw-r--r-- | challenge-020/mark-anderson/perl5/ch-2.pl | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/challenge-020/mark-anderson/perl5/ch-2.pl b/challenge-020/mark-anderson/perl5/ch-2.pl index 6eadcf8d15..5555fa8222 100644 --- a/challenge-020/mark-anderson/perl5/ch-2.pl +++ b/challenge-020/mark-anderson/perl5/ch-2.pl @@ -5,19 +5,17 @@ use List::Util 'sum'; use Math::Factor::XS 'factors'; my %sum; -my $num_1; +my $num; while(1) { - $num_1++; - $sum{$num_1} = sum(1, factors($num_1)); - my $sum_1 = $sum{$num_1}; - my $num_2 = $sum_1; - next if $num_1 == $num_2; - $sum{$num_2} // next; - my $sum_2 = $sum{$num_2}; + $num++; + my $sum = $sum{$num} = sum(1, factors($num)); - if($num_1 == $sum_2) { - say "$sum_1, $sum_2"; + $num != $sum || next; + $sum{$sum} // next; + + if($num == $sum{$sum}) { + say "$sum, $num"; last; } } |
