diff options
| author | Adam Russell <ac.russell@live.com> | 2022-06-06 11:00:38 -0400 |
|---|---|---|
| committer | Adam Russell <ac.russell@live.com> | 2022-06-06 11:00:38 -0400 |
| commit | 96dbfe7244eb1c2b2b735af846cc5cb14cf8d1a9 (patch) | |
| tree | 7c6a559f77b43f6202d6852b5daf19689345ee11 | |
| parent | 8d088c47f0e6d7cab02f35914a822b1e7f1877ab (diff) | |
| download | perlweeklychallenge-club-96dbfe7244eb1c2b2b735af846cc5cb14cf8d1a9.tar.gz perlweeklychallenge-club-96dbfe7244eb1c2b2b735af846cc5cb14cf8d1a9.tar.bz2 perlweeklychallenge-club-96dbfe7244eb1c2b2b735af846cc5cb14cf8d1a9.zip | |
cleaned up code
| -rw-r--r-- | challenge-167/adam-russell/perl/ch-1.pl | 8 | ||||
| -rw-r--r-- | challenge-167/adam-russell/perl/ch-2.pl | 6 |
2 files changed, 8 insertions, 6 deletions
diff --git a/challenge-167/adam-russell/perl/ch-1.pl b/challenge-167/adam-russell/perl/ch-1.pl index 7dda485fdc..4bfd74d9ac 100644 --- a/challenge-167/adam-russell/perl/ch-1.pl +++ b/challenge-167/adam-russell/perl/ch-1.pl @@ -7,13 +7,16 @@ use boolean; use Math::Primality qw/is_prime/; sub is_circular_prime{ - my($x) = @_; + my($x, $circular) = @_; my @digits = split(//, $x); + my @rotations; for my $i (0 .. @digits - 1){ @digits = (@digits[1 .. @digits - 1], $digits[0]); my $candidate = join("", @digits) + 0; + push @rotations, $candidate; return false if !is_prime($candidate); } + map{$circular->{$_} = -1} @rotations; return true; } @@ -23,9 +26,8 @@ sub first_n_circular_primes{ my %circular; my @circular_primes; { - if(is_circular_prime($i) && !$circular{join("", sort {$a <=> $b} split(//, $i))}){ + if(!$circular{$i} && is_circular_prime($i, \%circular)){ push @circular_primes, $i; - $circular{join("", sort {$a <=> $b} split(//, $i))} = -1; } $i++; redo if @circular_primes < $n; diff --git a/challenge-167/adam-russell/perl/ch-2.pl b/challenge-167/adam-russell/perl/ch-2.pl index ba38e6c0dd..6b2214bb1c 100644 --- a/challenge-167/adam-russell/perl/ch-2.pl +++ b/challenge-167/adam-russell/perl/ch-2.pl @@ -34,7 +34,7 @@ sub gamma{ } MAIN:{ - print gamma(3) . "\n"; - print gamma(5) . "\n"; - print gamma(7) . "\n"; + printf("%.2f\n",gamma(3)); + printf("%.2f\n",gamma(5)); + printf("%.2f\n",gamma(7)); }
\ No newline at end of file |
