aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-076/walt-mankowski/perl/ch-1.pl6
1 files changed, 4 insertions, 2 deletions
diff --git a/challenge-076/walt-mankowski/perl/ch-1.pl b/challenge-076/walt-mankowski/perl/ch-1.pl
index d2939f19ff..99ae70ce29 100644
--- a/challenge-076/walt-mankowski/perl/ch-1.pl
+++ b/challenge-076/walt-mankowski/perl/ch-1.pl
@@ -38,14 +38,16 @@ sub primes_upto($n) {
return grep {$is_prime[$_]} 2..$n;
}
+# find n possibly repeating primes, where n <= k, where the primes add
+# up to s
sub sums_goldbach($s, $k, @primes) {
my @solutions;
my $best = 1e300;
my $iter = combinations_with_repetition([0, @primes], $k);
while (my $p = $iter->next) {
- my @digits = grep(!/^0$/, $p->@*);
- next unless @digits;
+ my @digits = grep(!/^0$/, $p->@*); # remove 0s
+ next unless @digits; # ignore (0,0,0)
next unless sum(@digits) == $s;
if (@digits < $best) {
@solutions = (join " + ", @digits);