diff options
| author | Jörg Sommrey <28217714+jo-37@users.noreply.github.com> | 2020-11-30 13:16:14 +0100 |
|---|---|---|
| committer | Jörg Sommrey <28217714+jo-37@users.noreply.github.com> | 2020-12-01 18:04:12 +0100 |
| commit | 38c03a6ae91456aae0614e675254ceff82f767b2 (patch) | |
| tree | 6ada0af8ebbc38d7bd6ada53650a2c0543f7084a | |
| parent | e402b58fb4a5205606dda4cfcd5cb85cb4bc11f6 (diff) | |
| download | perlweeklychallenge-club-38c03a6ae91456aae0614e675254ceff82f767b2.tar.gz perlweeklychallenge-club-38c03a6ae91456aae0614e675254ceff82f767b2.tar.bz2 perlweeklychallenge-club-38c03a6ae91456aae0614e675254ceff82f767b2.zip | |
Solution to task 1
| -rwxr-xr-x | challenge-089/jo-37/perl/ch-1.pl | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/challenge-089/jo-37/perl/ch-1.pl b/challenge-089/jo-37/perl/ch-1.pl new file mode 100755 index 0000000000..93510bb801 --- /dev/null +++ b/challenge-089/jo-37/perl/ch-1.pl @@ -0,0 +1,20 @@ +#!/usr/bin/perl + +use Test2::V0; +use Math::Utils 'gcd'; +use List::Util 'reduce'; + +sub gcd_sum { + my $n = shift; + reduce { + local *_ = \$b; + $a + reduce {$a + gcd($_, $_ + $b)} 0 .. $n - $b; + } 0 .. $n - 1; +} + +is gcd_sum(3), 3, 'Example 1'; +is gcd_sum(4), 7, 'Example 2'; +is gcd_sum(5), 11; +is gcd_sum(6), 20; + +done_testing; |
