diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2020-11-04 04:06:50 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-11-04 04:06:50 +0000 |
| commit | b80a42c524f30ffd6f0c64ce7e89ceba3dcead8b (patch) | |
| tree | cced0075556aa37cc48d4ff6515e05ed724ee778 /challenge-085 | |
| parent | edff4b6d182501623ae1a11a8d73cfeccad5b30e (diff) | |
| parent | d6ae6219de090690c41e9d871b1292f3cad58237 (diff) | |
| download | perlweeklychallenge-club-b80a42c524f30ffd6f0c64ce7e89ceba3dcead8b.tar.gz perlweeklychallenge-club-b80a42c524f30ffd6f0c64ce7e89ceba3dcead8b.tar.bz2 perlweeklychallenge-club-b80a42c524f30ffd6f0c64ce7e89ceba3dcead8b.zip | |
Merge pull request #2695 from samirparikh/new-branch
add challenge 085 solutions
Diffstat (limited to 'challenge-085')
| -rw-r--r-- | challenge-085/samir-parikh/perl/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-085/samir-parikh/perl/ch-1.pl | 22 | ||||
| -rwxr-xr-x | challenge-085/samir-parikh/perl/ch-2.pl | 20 |
3 files changed, 43 insertions, 0 deletions
diff --git a/challenge-085/samir-parikh/perl/blog.txt b/challenge-085/samir-parikh/perl/blog.txt new file mode 100644 index 0000000000..a15a1d0abc --- /dev/null +++ b/challenge-085/samir-parikh/perl/blog.txt @@ -0,0 +1 @@ +https://samirparikh.com/blog/perl-weekly-challenge-085.html diff --git a/challenge-085/samir-parikh/perl/ch-1.pl b/challenge-085/samir-parikh/perl/ch-1.pl new file mode 100755 index 0000000000..e60e31c645 --- /dev/null +++ b/challenge-085/samir-parikh/perl/ch-1.pl @@ -0,0 +1,22 @@ +#!/usr/local/bin/perl + +use warnings; +use strict; +use feature 'say'; +use Algorithm::Combinatorics qw/combinations permutations/; +use List::Util qw/sum/; + +# run program as: +# $ ./ch-1.pl "0.5, 1.1, 0.3, 0.7" +my @data = split /, /, $ARGV[0]; +my $citer = combinations(\@data, 3); +my $notFound = 1; + +while (my $c = $citer->next) { + if (sum(@$c) > 1 && sum(@$c) < 2) { + say "found triplet such that 1 < ", join( " + ", @$c), " < 2"; + $notFound = 0; + } +} + +say "no triplets found such that 1 < a+b+c < 2" if $notFound; diff --git a/challenge-085/samir-parikh/perl/ch-2.pl b/challenge-085/samir-parikh/perl/ch-2.pl new file mode 100755 index 0000000000..be9ee00467 --- /dev/null +++ b/challenge-085/samir-parikh/perl/ch-2.pl @@ -0,0 +1,20 @@ +#!/usr/local/bin/perl + +use v5.10; +use POSIX; +use strict; +use warnings; + +my ($a, $b,); +my $number = $ARGV[0]; +my $notFound = 1; + +for (my $b = 2; $b < $number; $b++) { + $a = $number ** (1 / $b); + if (floor($a) ** $b == $number) { + say floor($a), " ^ ", $b, " = ", $number; + $notFound = 0; + } +} + +say "0" if $notFound; |
