aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScimon Proctor <simon.proctor@gmail.com>2021-08-09 14:54:59 +0100
committerScimon Proctor <simon.proctor@gmail.com>2021-08-09 14:54:59 +0100
commitf6f9fa776f9dc5bd59f7d63ff97625fbea3c3f1a (patch)
tree2be976da230addb856614a946ab59e83d10e4a3a
parent12dd93a4a9defb89724f216bb360689ff3fd1b9e (diff)
downloadperlweeklychallenge-club-f6f9fa776f9dc5bd59f7d63ff97625fbea3c3f1a.tar.gz
perlweeklychallenge-club-f6f9fa776f9dc5bd59f7d63ff97625fbea3c3f1a.tar.bz2
perlweeklychallenge-club-f6f9fa776f9dc5bd59f7d63ff97625fbea3c3f1a.zip
Hyper for the win
-rw-r--r--challenge-125/simon-proctor/raku/ch-1.raku11
1 files changed, 1 insertions, 10 deletions
diff --git a/challenge-125/simon-proctor/raku/ch-1.raku b/challenge-125/simon-proctor/raku/ch-1.raku
index e5dc16521a..5caf5d2c2d 100644
--- a/challenge-125/simon-proctor/raku/ch-1.raku
+++ b/challenge-125/simon-proctor/raku/ch-1.raku
@@ -26,15 +26,6 @@ sub py-triples(UInt $N) {
my @odds = (1,*+2...* >= $N).cache;
- my @pairs = (@odds X, @odds).grep( -> ($m, $n) { $m > $n } );
-
- for @pairs -> ( $m, $n ) {
- my $pos = ( ($m * $n), ( ($m²-$n²)/2), ( ($m² + $n²)/2 ) );
- if ( $N ~~ $pos.any ) {
- push @out, $pos;
- }
- }
-
- return @out;
+ return (@odds X, @odds).hyper.grep( -> ($m, $n) { $m > $n } ).map( -> ( $m, $n ) { ( ($m * $n), ( ($m²-$n²)/2), ( ($m² + $n²)/2 ) ) } ).grep( -> $pos { $N ~~ $pos.any; } );
}