diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2019-08-06 14:29:09 +0100 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2019-08-06 14:29:09 +0100 |
| commit | 4b8b136f68f8ee1881b1b7e88bdb6c554eda7b59 (patch) | |
| tree | 228238207f8a7f0b51a1390c084a38cf01cd426f /challenge-020/mark-anderson | |
| parent | 3b4cbfd6e6b966766b138b8254329c96c18ad054 (diff) | |
| download | perlweeklychallenge-club-4b8b136f68f8ee1881b1b7e88bdb6c554eda7b59.tar.gz perlweeklychallenge-club-4b8b136f68f8ee1881b1b7e88bdb6c554eda7b59.tar.bz2 perlweeklychallenge-club-4b8b136f68f8ee1881b1b7e88bdb6c554eda7b59.zip | |
- Added solutions by Mark Anderson.
Diffstat (limited to 'challenge-020/mark-anderson')
| -rw-r--r-- | challenge-020/mark-anderson/perl5/ch-1.pl | 14 | ||||
| -rw-r--r-- | challenge-020/mark-anderson/perl5/ch-2.pl | 26 |
2 files changed, 40 insertions, 0 deletions
diff --git a/challenge-020/mark-anderson/perl5/ch-1.pl b/challenge-020/mark-anderson/perl5/ch-1.pl new file mode 100644 index 0000000000..406398139e --- /dev/null +++ b/challenge-020/mark-anderson/perl5/ch-1.pl @@ -0,0 +1,14 @@ +#!/usr/bin/env perl + +use Modern::Perl '2018'; + +my $string = shift || 'ABBCDEEF'; +my @array; + +while($string =~ /((.)\2*)/g) { + push @array, $1; +} + +say "@array"; + + diff --git a/challenge-020/mark-anderson/perl5/ch-2.pl b/challenge-020/mark-anderson/perl5/ch-2.pl new file mode 100644 index 0000000000..b3f29fd3bf --- /dev/null +++ b/challenge-020/mark-anderson/perl5/ch-2.pl @@ -0,0 +1,26 @@ +#!/usr/bin/env perl + +use Modern::Perl '2018'; +use List::Util 'sum'; +use Math::Factor::XS 'factors'; + +my %sum; + +my $num_1 = 0; + +while(1) { + $num_1++; + + my $num_2 = sum (1, factors($num_1)); + + next if $num_1 == $num_2; + + $sum{$num_1} = $num_2; + + $sum{$num_2} // next; + + if($num_1 == $sum{$num_2}) { + say "$num_2, $num_1"; + last; + } +} |
