diff options
| author | E7-87-83 <fungcheokyin@gmail.com> | 2022-03-28 05:18:14 +0800 |
|---|---|---|
| committer | E7-87-83 <fungcheokyin@gmail.com> | 2022-03-28 05:18:14 +0800 |
| commit | 1923dc78b889c9449de6e14bc7bdc247416cbb96 (patch) | |
| tree | 7e43d755ee344ee2619123d0bc015a4d69a5d6ea | |
| parent | b68252c4cad91b699d60bcc7718902211fe39c34 (diff) | |
| download | perlweeklychallenge-club-1923dc78b889c9449de6e14bc7bdc247416cbb96.tar.gz perlweeklychallenge-club-1923dc78b889c9449de6e14bc7bdc247416cbb96.tar.bz2 perlweeklychallenge-club-1923dc78b889c9449de6e14bc7bdc247416cbb96.zip | |
minor edit
| -rw-r--r-- | challenge-157/cheok-yin-fung/perl/ch-2.pl | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/challenge-157/cheok-yin-fung/perl/ch-2.pl b/challenge-157/cheok-yin-fung/perl/ch-2.pl index 9f9aeb2a2e..05c3a20e2d 100644 --- a/challenge-157/cheok-yin-fung/perl/ch-2.pl +++ b/challenge-157/cheok-yin-fung/perl/ch-2.pl @@ -32,10 +32,14 @@ sub proper_divisors_lt_one { # lazy way to find divisors my $num = $_[0]; my @pd = (); - for my $i (2..$num/2) { - push @pd, $i if $num % $i == 0; + my @rev_pd = (); + for my $i (2..int sqrt $num) { + if ($num % $i == 0) { + push @pd, $i; + unshift @rev_pd, $num/$i; + } } - return [@pd]; + return [@pd, @rev_pd]; } |
